Java 要写入文件的BufferedWriter

Java 要写入文件的BufferedWriter,java,bufferedwriter,Java,Bufferedwriter,我正在用java中的BufferedReader读取一个文件。下面是我在读取文件时尝试执行的操作序列 保持读取文件中一定长度的字符 一旦读到了长度,对读字符串执行一些操作 将读取字符串写入临时文件 重置所有计数器(例如长度计数器) 返回#1,在文件的其余部分再次执行此操作 我想弄清楚的是#3。我想在使用BufferedWriter写入文件时附加到临时文件。我知道有append(),但它看起来像是在写新行。但是,每次我都想写入下一个游标。基本上,我想保留原始文件的格式。创建一个完全相同的文件,但某

我正在用java中的BufferedReader读取一个文件。下面是我在读取文件时尝试执行的操作序列

  • 保持读取文件中一定长度的字符
  • 一旦读到了长度,对读字符串执行一些操作
  • 将读取字符串写入临时文件
  • 重置所有计数器(例如长度计数器)
  • 返回#1,在文件的其余部分再次执行此操作
  • 我想弄清楚的是#3。我想在使用BufferedWriter写入文件时附加到临时文件。我知道有append(),但它看起来像是在写新行。但是,每次我都想写入下一个游标。基本上,我想保留原始文件的格式。创建一个完全相同的文件,但某些值正在更改

    我希望这是有意义的


    谢谢

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

    append()可以正常工作。您甚至可以只进行简单的编写()。如果您想用BufferedWriter写新行,您可以这样做

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

    对于书写,您可以使用
    PrintWriter

    java.io.PrintWriter pw = new PrintWriter(new FileWriter(file, true));
    
    您可以使用
    append()
    write()
    ,两者都可以使用。
    java.io.PrintWriter pw = new PrintWriter(new FileWriter(file, true));