如何在 Java FileOutputStream 中写入新行

2022-09-02 09:34:51

我想使用 ; 写一个新行;我尝试过以下方法,但没有一个有效:FileOutputStream

encfileout.write('\n');
encfileout.write("\n".getbytes());
encfileout.write(System.getProperty("line.separator").getBytes());

答案 1

这应该有效。可能你忘了打电话。encfileout.flush()

然而,这不是写文本的首选方式。您应该使用其方法包装输出流并享受其方法:PrintWriterprintln()

PrintWriter writer = new PrintWriter(new OutputStreamWriter(encfileout, charset));

或者,您可以从头开始使用:FileWriterFileOutputStream

FileWriter fw = new FileWriter("myfile");
PrintWriter writer = new PrintWriter(fw);

现在只需致电

writer.println();

不要忘记打电话,当你完成工作时。flush()close()


答案 2

这可能是一个观众问题...尝试在 EditPlus 或 Notepad++ 中打开该文件。Windows 记事本可能无法识别其他操作系统的换行符。您现在在哪个程序中查看文件?