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

ファイルを上書きするのではなく、ファイルに追加したい。ファイル名をとるコンストラクターは、仕事に向いていないようです。明示的に追加を要求できる場所を作成することをお勧めします。生のファイル名の代わりに、そのストリームをコンストラクターに渡すことができます。FormatterFileOutputStreamFormatter

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