BufferedWriter写入文件

时间:2012-07-18 14:10:15

标签: java bufferedwriter

我正在使用java中的BufferedReader读取文件。以下是我尝试读取文件时的操作顺序

  1. 继续阅读文件中一定长度的字符
  2. 读取长度后,对读取字符串进行一些操作
  3. 将读取的字符串写入临时文件
  4. 重置所有计数器(例如长度的计数器)
  5. 返回#1并再次为文件的其余部分执行此操作
  6. 我想弄清楚的是#3。当我使用BufferedWriter写入文件时,我想附加到临时文件。我知道有append()但是,看起来它写入新行。但是,我想每次写入下一个光标。基本上,我想保留原始文件的格式。创建一个完全相同的文件,除了某些值被更改。

    我希望这是有道理的。

    感谢。

3 个答案:

答案 0 :(得分:2)

您可以通过将true作为第二个参数传递给其构造函数来使用FileWriter。这将导致FileWriter附加到文件的末尾,而不是覆盖现有内容。

http://docs.oracle.com/javase/6/docs/api/java/io/FileWriter.html

BufferedWriter writer = new BufferedWriter(new FileWriter(file, true));
//calls to write will now append

答案 1 :(得分:0)

append()会正常工作。你甚至可以做普通的write()。如果你想用BufferedWriter写一个新行,你可以这样做

BufferedWriter buff = new BufferedWriter();
buff.newLine();

答案 2 :(得分:0)

写作时,您可以使用PrintWriter

java.io.PrintWriter pw = new PrintWriter(new FileWriter(file, true));