1

我希望能够调用这样的方法

public void Printer(String ToPrint)throws IOExcpetion{
BufferedWriterName.write(ToPrint);
}

那只会在已经创建的文件中添加一个文本行。但是这段代码需要在同一个方法中

FileWriter Write=new FileWriter("c:\\filename.txt");
BufferedWriter BufferedWriterName =new BufferedWriter(Write);

如果存在上述代码,我担心每次调用该方法时它都会创建一个新文件。是否有任何方法在调用时只会在 .txt 文件中打印一个新行?我是这个领域的真正初学者。我以前从未从 java 创建文本文件,所以完全不同的方法会很好。

4

2 回答 2

4

通过传递给构造函数来打开File附加模式。trueFileWriter

FileWriter Write=new FileWriter("c:\\filename.txt",true);

公共 FileWriter(字符串文件名,布尔附加)抛出 IOException

在给定文件名的情况下构造一个 FileWriter 对象,该对象带有一个布尔值,指示是否附加写入的数据。

于 2013-09-15T11:40:06.643 回答
0

I've never created text files from java before, so a completely different approach would be fine.- 好的,你去吧:你可以使用Guava来简化这个

import java.io.File;
import java.io.IOException;

import com.google.common.base.Charsets;
import com.google.common.io.Files;

public class FileAppendTest {

  /**
   * @param args
   * @throws IOException 
   */
  public static void main(String[] args) throws IOException {
    File file = new File("c:\\filename.txt");
    Files.append("\nline of text to be appended", file, Charsets.UTF_8);
  }
}
于 2013-09-15T11:46:30.353 回答