gpt4 book ai didi

java - 向 BufferedWriter 添加新行

转载 作者:行者123 更新时间:2023-12-02 01:44:59 25 4
gpt4 key购买 nike

如果将 true 作为最后一个参数传递,则每次连续调用 writeMore() 时,我都会尝试写入文本文件,并写入新行。然而,作者一直写到同一第一行的末尾。我不明白问题出在哪里。

package FileIO;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class Buffered_Writer {

public static void main(String[] args) throws IOException{

String fileName = "myFile.txt";
String message = "I'm written into the file.";

File myFile = new File("C:\\Users\\User\\Desktop\\" + fileName);
try {
myFile.createNewFile();
} catch (Exception e) {
System.out.println("Could not create file!");
}


BufferedWriter writer = new BufferedWriter(new FileWriter(myFile, true));
writer.write(message);

writeMore("This much more has been written.", myFile, true);

writer.close();
}

public static void writeMore(String message, File file, boolean newLine) throws IOException{

BufferedWriter writer = new BufferedWriter(new FileWriter(file, true));
if (newLine) {
writer.append(" \n");
writer.append(message);
}
else {
writer.append(" " + message);
}
writer.close();
}
}

最佳答案

为什么不使用正确的方法

https://docs.oracle.com/javase/7/docs/api/java/io/BufferedWriter.html#newLine()

根据 javadocs

Writes a line separator. The line separator string is defined by the system property line.separator, and is not necessarily a single newline ('\n') character.

关于java - 向 BufferedWriter 添加新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53825555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com