调用一种方法将行添加到java中的文本文件中

时间:2013-09-15 11:38:42

标签: java text java-io

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

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

这只会在已创建的文件中添加文本行。 但是这段代码必须采用相同的方法

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

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

2 个答案:

答案 0 :(得分:4)

通过将File传递给true构造函数,打开附加模式中的FileWriter

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

public FileWriter(String fileName,boolean append) throws IOException

  

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

答案 1 :(得分: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);
  }
}