У меня есть строка, которую я получаю из TextArea. Эта строка включает в себя новые строки ввода. Я хочу написать всю строку (включая эти строки) в файл.
Это то, что у меня есть сейчас:
FileWriter fw = new FileWriter(nm + ".txt");
PrintWriter pw = new PrintWriter(fw);
pw.print(txt);
pw.close();
Я googled, но я понятия не имею, как я могу исправить свою проблему.
Смотрите в этом направлении:
1. System.getProperty("line.separator");
2. System.lineSeparator();
Например:
pw.print(txt.replace("\n", System.lineSeparator()).replace("\r\n", System.lineSeparator()));
У вас не должно быть проблем с вашим кодом.
В любом случае, если вы используете Java 7, вы должны использовать Files
:
final Path path = Paths.get(nm + ".txt");
try (
BufferedWriter writer = Files.newBufferedWriter(path, StandardCharsets.UTF_8,
StandardOpenOption.APPEND, StandardOpenOption.CREATE_NEW);
) {
writer.write(txt);
writer.flush();
}