Java writer.write “\n”

140
28 мая 2019, 20:50

Пытаюсь записать текст в .txt файл. Хочу чтобы все строки которые я записываю начинались с новой строки. Почему этот код не работает? Весь текст идёт в одну строку. (Write из FileWriter)

writer.write("Логин : " +list.get(0).getlogin() + "\n");
writer.write("Пароль : " +list.get(0).getpassword() + "\n");
Answer 1

Пользователь @justcvb правильно объяснил причины происходящего в своём ответе. Один из способов решить эту проблему - использовать форматтер и спецификатор %n, подставляющий актуальный для данной системы символ перевода строки. Заодно это позволит улучшить ваш код, избавившись от конкатенации строк:

writer.write(String.format("Логин : %s%n", list.get(0).getlogin()));
Answer 2

В разных операционных системах используются разные комбинации управляющих символом для перевода строк. Где-то это \n, где-то \r\n, как в Windows, где-то как-то иначе.

Метод System.lineSeparator возвращает соответствующий текущей системе разделитель строк.

READ ALSO
HikariCP Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented

HikariCP Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented

Хочу использовать HikariCP в своем приложении на спринге, но при создании DataSource возникает исключение

191
Паралельные тесты в testNG.xml

Паралельные тесты в testNG.xml

Помогите составить testngxml для паралельного запуска тестов

148
Сохранение данных в H2 в Spring Boot

Сохранение данных в H2 в Spring Boot

Как сделать чтоб после перезапуска приложения, данные добавленные в текущей сессии сохранились и были загружена в следующий разЯ так понимаю...

160