Как написать новую строку в Java FileOutputStream
Я хочу написать новую строку с помощью FileOutputStream
; Я пробовал следующие подходы, но ни один из них не работает:
encfileout.write('n');
encfileout.write("n".getbytes());
encfileout.write(System.getProperty("line.separator").getBytes());
2 ответов
Это может быть проблема зрителя... Попробуйте открыть файл в 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()
когда вы закончите свою работу.