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());
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());
It could be a viewer problem... Try opening the file in EditPlus or Notepad++. Windows Notepad may not recognize the line feed of another operating system. In which program are you viewing the file now?
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 recognize the line feed of another operating system. In which program are you viewing the file now?
To add a line break use
fileOutputStream.write(10);
here decimal value 10
represents newline in ASCII
String lineSeparator = System.getProperty("line.separator");
<br>
fos.write(lineSeparator.getBytes());
You can use Fos.write(System.lineSeparator().getBytes()). it worked for me.
© 2022 - 2024 — McMap. All rights reserved.