I want to write a new line using a FileOutputStream
; I have tried the following approaches, but none of them are working:
encfileout.write('\n');
encfileout.write("\n".getbytes());
encfileout.write(System.getProperty("line.separator").getBytes());
This should work. Probably you forgot to call encfileout.flush()
.
However this is not the preferred way to write texts. You should wrap your output stream with PrintWriter
and enjoy its println()
methods:
PrintWriter writer = new PrintWriter(new OutputStreamWriter(encfileout, charset));
Alternatively you can use FileWriter
instead of FileOutputStream
from the beginning:
FileWriter fw = new FileWriter("myfile");
PrintWriter writer = new PrintWriter(fw);
Now just call
writer.println();
And do not forget to call flush()
and close()
when you finish your job.
It could be a viewer problem... Try opening the file in EditPlus or Notepad++. Windows Notepad may not recognise line feed of another operating system. In which program are you viewing the file now?
To add a line break use fileOutputStream.write(10); because decimal value 10 represents newline in ASCII
String lineSeparator = System.getProperty("line.separator");
<br>
fos.write(lineSeparator.getBytes());
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.