Текстовый редактор: не работает сохранение файла - Java
Формулировка задачи:
По заданию необходимо написать простой текстовый редактор (создание, открытие, сохранение отредактированного).
Вопрос: почему не работает сохранение файла?
Полный код:
buttonSave.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try(FileWriter writer = new FileWriter(file)){
writer.write(area.getText());
writer.flush();
}catch (Exception e2){
}
}
});public static void main(String[] args)
{
public static void main(String[] args)
{
JFrame frame = new JFrame("Мой текстовый редактор");
frame.setSize (800, 600);
frame.setVisible(true);
JButton buttonOpen = new JButton("Открыть");
buttonOpen.setLocation(10, 10);
buttonOpen.setSize(100, 50);
JButton buttonSave = new JButton("Сохранить");
buttonSave.setLocation(120, 10);
buttonSave.setSize(100, 50);
JButton buttonNew = new JButton("Новый");
buttonNew.setLocation(230, 10);
buttonNew.setSize(100, 50);
JTextArea area = new JTextArea();
area.setLocation(10, 70);
area.setSize(790, 530);
File file = new File(" ");
// -------------------------------------
buttonOpen.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
File file = new File(" ");
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(frame);
file = chooser.getSelectedFile();
try(FileReader reader = new FileReader(file)){
char [] buf = new char [(int) file.length()];
reader.read(buf);
area.setText(new String(buf));
}catch (Exception e1){
}
}
});
buttonSave.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try(FileWriter writer = new FileWriter(file)){
writer.write(area.getText());
writer.flush();
}catch (Exception e2){
}
}
});
buttonNew.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
File file = new File(" ");
JFileChooser chooser = new JFileChooser();
if(chooser.showSaveDialog(null)== JFileChooser.APPROVE_OPTION){
file = chooser.getSelectedFile();
try(FileWriter writer = new FileWriter(file)){
writer.write("");
writer.flush();
}catch (Exception e3){
}
}
}
});
// -------------------------------------
frame.add(buttonOpen);
frame.add(buttonSave);
frame.add(buttonNew);
frame.add(area);
frame.add(new JLabel());
}Решение задачи: «Текстовый редактор: не работает сохранение файла»
textual
Листинг программы
private static File file;