为什么FileWriter没有创建应有的新行?爪哇

时间:2018-11-30 20:03:06

标签: java file text-files newline filewriter

您好,我曾想过如何在附加到文件时创建新行,许多人说在附加到文件之前要使用.write("\n"),但这行不通,甚至在{{ 1}},但没有任何效果。其他人说使用.write(),但这不起作用。我做错了什么吗?

File does not create a new line

FileWriter fr = new FileWriter(file, true);

2 个答案:

答案 0 :(得分:0)

在Unix上,\ n用作换行,但在Windows上则需要\ r \ n,即两个控制字符。

许多编辑器都可以应付,所以没关系,但是记事本非常基础,只接受Windows换行符。

一种确保始终编写特定于平台的新行的方法是用FileWriter包装FileWriter并使用println

答案 1 :(得分:0)

行尾取决于系统。您应该使用更高级别的类来写入文件,或者发送系统本地结尾,例如:

fr.write("Grade for student " + fileName + " has been posted." + System.lineSeparator());

\ n在大多数Unix变体中转义了换行符,但可能在其他计算机上不起作用。