import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JTextArea;
import java.io.*;
import javax.swing.*;
public class Notepad extends JFrame {
String str;
private JPanel contentPane;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Notepad frame = new Notepad();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public Notepad() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JTextArea textArea = new JTextArea();
textArea.setLineWrap(true);
textArea.setBounds(19, 19, 406, 218);
contentPane.add(textArea);
try {
File inFile = new File("notepad.txt");
FileReader fileReader = new FileReader(inFile);
BufferedReader bufReader = new BufferedReader(fileReader);
String tmp = "";
while (true) {
str = bufReader.readLine();
if(str == null) {
break;
}
tmp = tmp + str + "\n";
}
str = tmp;
bufReader.close();
} catch (IOException e) {
System.out.println("File error");
}
textArea.setText(str);
JScrollPane jsp = new JScrollPane(textArea);
jsp.setBounds(61, 41, 330, 182);
contentPane.add(jsp);
JButton btnBack = new JButton("Save");
btnBack.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
str = textArea.getText();
try {
File outFile = new File("notepad.txt");
FileOutputStream outFileStream = new FileOutputStream(outFile);
PrintWriter outStream = new PrintWriter(outFileStream);
outStream.println(str);
JOptionPane.showMessageDialog(null, "File Saved: " + str);
outStream.close();
} catch (IOException e1) {
System.out.println("File error");
}
}
});
btnBack.setBounds(108, 235, 117, 29);
contentPane.add(btnBack);
JButton btnClear = new JButton("Exit");
btnClear.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
btnClear.setBounds(237, 235, 117, 29);
contentPane.add(btnClear);
}
}