我想用FileOutputStream
寫一個新行;我嘗試了以下方法,但它們都不工作:如何在Java中編寫新行FileOutputStream
encfileout.write('\n');
encfileout.write("\n".getbytes());
encfileout.write(System.getProperty("line.separator").getBytes());
我想用FileOutputStream
寫一個新行;我嘗試了以下方法,但它們都不工作:如何在Java中編寫新行FileOutputStream
encfileout.write('\n');
encfileout.write("\n".getbytes());
encfileout.write(System.getProperty("line.separator").getBytes());
它可能是一個查看器問題...嘗試在EditPlus或Notepad ++中打開文件。 Windows記事本可能無法識別其他操作系統的換行符。你現在在哪個程序中查看文件?
問題解決了,謝謝泰迪.. –
這應該有效。可能你忘了撥打encfileout.flush()
。
但是,這不是寫文本的首選方式。你應該PrintWriter
包裝你的輸出流,並享受其println()
方法:
PrintWriter writer = new PrintWriter(new OutputStreamWriter(encfileout, charset));
或者您可以使用FileWriter
,而不是FileOutputStream
從開始:
FileWriter fw = new FileWriter("myfile");
PrintWriter writer = new PrintWriter(fw);
現在只需撥打
writer.println();
當您完成工作時,請不要忘記撥打flush()
和close()
。
定義「不工作」。 –
其不寫新行 –
@PavanPatidar:它正在寫一個換行符。當然。 –