I want to create a reminder displayed like a sticky note in my system. My initial idea was to have a text area that could be updated using a saved .txt file (which was a bad idea, so I cannot show you the code). I want my reminder to be saved even after the user logs out of the system. What can you suggest? Thank you. PS. If I didn't explain it clear enough please let me know.
Here's the text area that can be edited when the user wants to have reminders like notes in the system.

EDIT: I'm merely a beginner in Netbeans, so I've this code:
try {
//// reader = new BufferedReader(new FileReader("C:\\Users\\cqm005\\Documents\\NetBeansProjects\\MASYhista\\ReminderText.txt"));
// String text = null;
//
// // repeat until all lines is read
// while ((text = reader.readLine()) != null) {
// contents.append(text)
// .append(System.getProperty(
// "line.separator"));
// }
//} catch (FileNotFoundException e1) {
// e1.printStackTrace();
//} catch (IOException e1) {
// e1.printStackTrace();
//} finally {
// try {
// if (reader != null) {
// reader.close();
// }
// } catch (IOException e1) {
// e1.printStackTrace();
// }
//}
//ReminderEditText.setText(contents.toString());
-for retrieving data from the .txt file
and I just use
outStream.print(ReminderEditText.getText());
outStream.close();
RefreshReminder();
for saving reminders but it does not work as I expect it to. Please help me.
To save/restore data from a text file into a text area you do something like:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.text.*;
class TextAreaLoad extends JPanel
{
private JTextArea edit;
public TextAreaLoad()
{
setLayout( new BorderLayout() );
edit = new JTextArea(30, 60);
add(new JScrollPane(edit), BorderLayout.NORTH);
JButton read = new JButton("Read TextAreaLoad.txt");
read.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileReader reader = new FileReader( "TextAreaLoad.txt" );
BufferedReader br = new BufferedReader(reader);
edit.read( br, null );
br.close();
edit.requestFocus();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(read, BorderLayout.LINE_START);
JButton write = new JButton("Write TextAreaLoad.txt");
write.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileWriter writer = new FileWriter( "TextAreaLoad.txt" );
BufferedWriter bw = new BufferedWriter( writer );
edit.write( bw );
bw.close();
edit.setText("");
edit.requestFocus();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(write, BorderLayout.LINE_END);
}
private static void createAndShowGUI()
{
JFrame frame = new JFrame("TextArea Load");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new TextAreaLoad());
frame.pack();
frame.setLocationRelativeTo( null );
frame.setVisible(true);
}
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
createAndShowGUI();
}
});
}
}