7

重複の可能性: java append to file ファイル にデータを追加するには?

古いデータをクリーニング(削除)せずにJavaでファイルを書きたい

これは私の試みですが、現在のデータは新しいデータを書き込むときに消去されます。

import java.io.*;

public class WriteToFileExample {

public static void main(String[] args) {
    try {
        String content = "New content to write to file";

        File file = new File("/mypath/filename.txt");

        // if file doesnt exists, then create it
        if (!file.exists())
            file.createNewFile();

        FileWriter fw = new FileWriter(file.getAbsoluteFile());
        BufferedWriter bw = new BufferedWriter(fw);
        bw.write(content);
        bw.close();

    } catch (IOException e) {
        e.printStackTrace();
    }
}
}
4

4 に答える 4

19

FileWriter(String filename, boolean append)ファイルを追加モードで開くように指示できるコンストラクターを使用します。

FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);
                                                     //^^^^ means append
于 2012-12-18T18:09:27.363 に答える
4

試す

FileWriter fw = new FileWriter(file, true);

注: 2 番目のパラメーターは追加を意味します。file.getAbsoluteFile() は必要ありません。File だけで問題ありません

于 2012-12-18T18:09:26.993 に答える
3

追加モードでファイルを開きます。お気に入り

PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("outfilename", true)));
于 2012-12-18T18:13:28.003 に答える
1

FileWriter は、上書きするかどうかを指定するブール値の引数を取ります。

これを試して :

FileWriter fw = new FileWriter(file.getAbsoluteFile(),true);

もご覧ください:

http://docs.oracle.com/javase/6/docs/api/java/io/FileWriter.html#FileWriter%28java.io.File,%20boolean%29

于 2012-12-18T18:11:47.207 に答える