Проблема с разделителями "\ n" - PullRequest
1 голос
/ 13 апреля 2011

У меня есть объект stringbuilder, к которому добавляется строка данных.

после добавления каждой строки я добавляю "\ n" в конце, чтобы указать новую строку.

этот завершенный объект stringbuilder записывается в плоский файл.

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

Когда я открываю плоский файл в WordPad, новая строка принимается во внимание, и форматирование столбца идеально.форматирование при записи в плоский файл.Мне нужна новая строка для форматирования столбцов.

как вывести файл с новыми строками, но без использования \ n?

Ответы [ 5 ]

11 голосов
/ 13 апреля 2011

В Windows способ завершения строки заключается в использовании "\ r \ n", а не просто "\ n".

Вы можете найти «разделитель строк для текущей операционной системы», используя системное свойство line.separator:

String lineSeparator = System.getProperty("line.separator");
...
StringBuilder builder = new StringBuilder();
...
builder.append(lineSeparator);
...
2 голосов
/ 13 апреля 2011

Вы можете получить значение для системы, на которой работает Java-программа, из системных свойств

public static String newline = System.getProperty("line.separator");
1 голос
/ 13 апреля 2011

Вы должны добавить System.getProperty("line.separator") вместо \n. Поскольку «нодпад», это \r\n, для MS Windows.

0 голосов
/ 13 апреля 2011

Если вы используете Windows, вы должны написать \r\n, чтобы она правильно загружалась в Блокноте.Терминатор \n - это конец файла Unix, и Блокнот не сможет его правильно проанализировать.Wordpad преобразует их для вас.

Также я предлагаю не использовать Блокнот и смотреть на что-то вроде Vim.

0 голосов
/ 13 апреля 2011

В Windows вы должны использовать \ n \ r. В * NIX (Linux / UNIX / Mac) вы должны использовать \ n

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...