将几次运行的控制台输出写入文本文件

时间:2013-07-13 08:41:12

标签: java

我的问题与this one有关。但是,我正在寻找一种方法来将文本文件追加到几次运行。有没有办法将控制台输出写入文本文件而不删除旧的运行信息?我正在研究30多个课程,更改System.out.println语句会很繁琐,所以我更喜欢坚持使用System.setOut解决方案。

我有以下基于@Mac答案的代码

   PrintStream out = new PrintStream(new FileOutputStream("aa.txt"),true);
   System.setOut(out);

但文件aa.txt没有附加结果,我在这里遗漏了什么吗?

3 个答案:

答案 0 :(得分:5)

为文件创建FileWriterFileOutputStream时,将true作为第二个参数传递给FileWriterFileOutputStream的构造函数。< / p>

FileWriter(File file, boolean append) 

答案 1 :(得分:3)

FileWriterFileOutputStream为构造函数提供append标记。只需相应地修改引用的代码

答案 2 :(得分:3)

您应该使用:

PrintStream out = new PrintStream(new FileOutputStream("output.txt"),true);
System.setOut(out);