7

我在 GUI 中有一个按钮,当按下按钮时,用户可以将信息添加到文本文件中。我的这部分设置很好,但让我感到困惑的是,当用户写入文件时,它会删除文本文件中的所有信息,剩下的唯一一行是刚刚添加的新行。我需要添加信息并仍将原始信息保留在文本文件中。我认为 append 命令能够做到这一点,但我显然做错了什么。任何帮助都是极好的!

这是我的代码:

FileWriter fWriter = null;
    BufferedWriter writer = null;
    try {
        fWriter = new FileWriter("info.txt");
        writer = new BufferedWriter(fWriter);


        writer.append(javax.swing.JOptionPane.showInputDialog(this, "add info"));
        writer.newLine();
        writer.close();
    } catch (Exception e) {
    }
4

2 回答 2

11

使用带bool append参数的构造函数。为此,请参阅 javadocs FileWriter

fWriter = new FileWriter("info.txt", true);
于 2011-04-10T18:12:33.157 回答
2

你需要writer.flush(). PrintWriter默认情况下自动刷新但不是Writers

于 2011-04-10T18:11:36.730 回答