0

我知道如何从 JTextField 中获取值并将其写入 Java 语言的文本文件中。这是我的代码:

public class createfile {
    private Formatter x;

    public void openFile() {
        try {
            x = new Formatter("c:\\definition.txt");
        } catch (Exception e) {
            System.out.println("Error");
        }
    }

    private void addRecords() {
        x.format(null, jTextField3);
    }

    public void closFile() {
        x.close();
    }
}

它可以正常工作并将 jTextField3 的值写入名为“definition.txt”的文件中。但是如果用户再次运行程序,并在 jTextField3 中输入新值,那么“definition.txt”将被新数据填充!并且之前的数据会丢失!我不想变成那样!我想保留用户每次输入的所有数据。我应该如何更改我的代码?谢谢 !

4

1 回答 1

0

想追加到文件而不是覆盖它。采用文件名的Formatter构造函数似乎无法胜任这项工作。我建议您创建一个FileOutputStream可以明确要求附加的位置。您可以将该流而不是原始文件名传递给Formatter构造函数。

x = new Formatter(new FileOutputStream("c:\\definition.txt", true));
于 2012-09-08T19:57:39.920 回答