想要使用Java中的PrintWriter类添加行到文件。创建文件,不保存数据

时间:2013-12-17 15:39:43

标签: java file stream makefile printwriter

我希望我的程序创建一个新的文本文件,除非已存在。无论如何,我想每次运行程序时都在文件中打印一行。文件已创建,但未保存任何数据。为什么呢?

File fileName = new File("fileName");

try {
    if (fileName.exists())
    {
        filePrinter = new PrintWriter(new FileOutputStream(fileName));
    }
    else
    {
        filePrinter = new PrintWriter(new FileOutputStream(fileName, true));
    }

} catch (FileNotFoundException e1) 
    {
        e1.printStackTrace();
    }

//irrelevant code


filePrinter.println("some text" + integerValue + "then more text");
filePrinter.close();

2 个答案:

答案 0 :(得分:0)

我建议在关闭之前清除内容。

filePrinter.flush(); 

如果这不起作用,请尝试以下方法:

filePrinter = new FileWriter(new File(fileName));
filePrinter.write("some text" + integerValue + "then more text");
filePrinter.flush();
filePrinter.close();

答案 1 :(得分:0)

问题出在发布的代码之外,所有道歉。 <问题是

    //irrelevant code

包含在特定条件下重置程序的说明。这些条件总是正确的,因此从未达到filePrinter.println()代码。

感谢您的所有输入。