我希望打印以下内容
测试1
TEST2 TEST3
test4
但我似乎无法将文字传到下一行。
请帮忙
import java.io.*;
public class MainFrame {
public static void main(String[] args) {
try {
BufferedWriter out = new BufferedWriter(new FileWriter("file.txt"));
for (int i = 0; i < 4; i++) {
out.write("test " + "\n");
}
out.close();
} catch (IOException e) {}
}
}
答案 0 :(得分:35)
尝试out.newLine();
所以,它会是
for (int i = 0; i < 4; i++) {
out.write("test " + "\n");
out.newLine();
}
答案 1 :(得分:8)
您需要有两个\n\n
才能显示空行。
试试
out.write("test " + "\n\n");
在您的情况下(使用一个\n
),它将打破当前行并移动到新行(这是下一行),但空行不会出现。
换行符可以依赖于platform,因此最好使用
从java系统属性中获取换行符。public static String newline = System.getProperty("line.separator");
答案 2 :(得分:3)
如果要生成文本,可能更容易在BufferedWriter之上创建PrintWriter,并使用PrintWriter中的方法(如println)进行写作。
答案 3 :(得分:1)
给定的答案 - System.getProperty("line.separator")
已经足够了,但也可以尝试out.write("test " + "\r\n");
它可能有用,因为某些操作系统中的换行符是\r\n
而不是\n
答案 4 :(得分:0)
根据您打开文件的文本编辑器以及您正在使用的操作系统,您可能必须使用“\ r \ n”而不是“\ n”。
试一试。
答案 5 :(得分:0)
考虑到你有一个空的catch块,可能是你得到一个异常并隐藏它。移除catch
块并将throw IOException
添加到方法定义中,这样如果您收到异常,就可以看到它。