43

我目前FileWriter用于创建和写入文件。有什么方法可以让我每次都写入同一个文件而不删除其中的内容?

   fout = new FileWriter(
    "Distribution_" + Double.toString(_lowerBound) + "_" + Double.toString(_highBound) + ".txt");
    fileout = new PrintWriter(fout,true);
fileout.print(now.getTime().toString() + ", " + weight + ","+ count +"\n");
    fileout.close();
4

4 回答 4

115

true作为第二个参数传递以FileWriter打开“附加”模式。

fout = new FileWriter("filename.txt", true);

FileWriter 使用参考

于 2009-08-03T23:48:07.857 回答
9

Javadoc中,您可以使用构造函数来指定是否要追加。

公共 FileWriter(文件文件,布尔附加)抛出 IOException

在给定 File 对象的情况下构造一个 FileWriter 对象。如果第二个参数为真,那么字节将被写入文件的末尾而不是开头。

于 2009-08-03T23:48:49.680 回答
6

您可以通过true作为第二个参数传递以附加模式打开 FileWriter:

fout = new FileWriter("Distribution_" + ... + ".txt", true);
于 2009-08-03T23:49:41.487 回答
3

您可以将 true 作为第二个参数传递给 FileWriter 的构造函数,以指示编写器追加数据而不是重写文件。

例如,

fout = new FileWriter("Distribution_" + Double.toString( lowerBound) + " " + Double.toString(_highBound) + ".txt", true );

希望这能解决你的问题。

于 2009-08-03T23:53:50.247 回答