2012-03-29 152 views
3

我知道如何创建PrintWriter,并且能够从我的GUI中获取字符串并将其打印到文本文件中。如何使用PrintWriter多次写入文本文件

我希望能够采取相同的程序和打印到文件中添加文本到文件而不是替换文本文件中已有的所有文件。我怎样才能做到这一点,以便当更多的数据被添加到文本文件,每次都打印在一个新的行?

任何示例或资源都很棒。

回答

7
try 
    { 
    PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("outfilename", true))); 
    out.println("the text"); 
    out.close(); 
    } catch (IOException e) { 
    } 

FileWriter构造函数的第二个参数告诉它追加到文件(而不是清除文件)。

对于昂贵的作家(即FileWriter),建议使用BufferedWriter,使用PrintWriter可以访问您可能从System.out中使用过的println语法。

但是BufferedWriterPrintWriter包装并不是绝对必要的。

0

您的PrintWriter包装另一个作家,可能是FileWriter。当你构造FileWriter时,使用带有File对象和“append”标志的构造函数。如果您传递true作为append标志,它将以追加模式打开文件,这意味着新的输出将在文件现有内容的末尾进行,而不是替换现有内容。

1
PrintWriter writer=new PrintWriter(new FileWriter(new File("filename"),true)); 
writer.println("abc"); 

FileWriter构造函数带有append属性,如果它是true,则可以附加到文件。

check this

相关问题