Ява записывает только записи первой линии


Я работаю над Java-приложением, которое имеет JTextArea для ввода текста пользователями. Это может быть любое количество строк,однако я сталкиваюсь с проблемой с моей пишущей машинкой, где она сохраняет только первую строку любого ввода. Я никогда раньше не пользовался Swing или FileWriter, поэтому я могу ошибаться, но вот мой код:

FileWriter fw = null;
    try {
        fw = new FileWriter(lastSavedFile);
        details.write(fw);
    } catch (IOException exception) {
        System.err.println("Error saving file");
        exception.printStackTrace();
    } finally {
        if (fw != null) {
            try {
                fw.close();
            } catch (IOException exception) {
                System.err.println("Error closing writer");
                exception.printStackTrace();
            }
        }
    }

Спасибо!

2 2

2 ответа:

Попробуйте промыть файловую машинку, прежде чем закрыть ее в блоке finally. .

.
if (fw != null) 
{
   try 
   {
       fw.flush();
       fw.close();
   } catch (IOException exception) 
   {
       System.err.println("Error closing writer");
       exception.printStackTrace();
   }
}
.
.

Я согласен с @Yishai ... И если возможно, то дайте использовать функцию деталей. Это поможет другим ответить на него.

Используйте конструктор следующим образом: FileWriter writer = новая файловая машина ("lastsavedfilee.txt", true);