多行到一个文本文件? - Java

Multiple Lines into One Text File? - Java

如何将多行保存到一个文本文件中?

我想在每次执行代码时在同一个文本文件中打印“新行”。

try {
        FileWriter fw = new FileWriter("Test.txt");
        PrintWriter pw = new PrintWriter(fw);

        pw.println("New Line");
        pw.close();
    }
    catch (IOException e)
    {
        System.out.println("Error!");
    }

我可以创建一个新文件,但无法在每次执行代码时都创建一个新行。

您每次 运行 时都在创建一个新行,问题是您在打开文件时 运行cating 文件。我建议你每次都附加到文件中。

try (FileWriter fw = new FileWriter("Test.txt", true); // true for append
    PrintWriter pw = new PrintWriter(fw)) {
    pw.println("New Line");
} // try-with-resource closes everything.

注意:为每一行打开和关闭一个文件是昂贵的,如果你经常这样做,我建议每次打开文件并刷新输出。

您正在这样做:

FileWriter fw = new FileWriter("Test.txt");

每次执行该行时都会覆盖文件...

但是 您需要将数据附加到文件

FileWriter fw = new FileWriter("Test.txt", true);

看看doc

中的构造函数

您需要以附加模式打开文件。您可以按如下方式进行:

FileWriter fw = new FileWriter("Test.txt", true);

这是相同的documentation

将 true 作为第二个参数传递给 FileWriter 以打开 "append" 模式。

          FileWriter fw = new FileWriter("filename.txt", true);

这将使您的文件以追加模式打开,这意味着每次您写入文件时,您的结果都会追加到文件末尾。您还可以在每次写入内容后写入 '\n',这样它会在那里插入一个新行。