Java Formatter не разрешает новый символ строки?

Итак, у меня есть следующий код для записи в файл:

Formatter output = ....... // Creating the formatter works, writes to appropriate file.

output.format("%d\n", records.length);
for(GradeRecord gR:records)
{
    output.format(gR.toString() + "\n");
}

Единственная проблема в том, что в выводе нет символов новой строки.

Не работает, если я заменю "\n" на "\r".

... Я не знаю, почему это не работает. Вывод создается и пишет правильно. (Вижу файл создан и в нем все прописано, кроме символов новой строки.)


person CodeBunny    schedule 31.03.2011    source источник


Ответы (3)


вы можете использовать формат "%n" для вывода новой строки для конкретной платформы с помощью средства форматирования.

person jtahlborn    schedule 31.03.2011

Вы хотите использовать правильную строку разрыва строки независимо от того, на какой платформе она выполняется. Вы можете сделать это динамически, используя

String newline = System.getProperty("line.separator");

Так что вы можете позже сделать

output.format(gR.toString() + newline);

person Community    schedule 31.03.2011

Вы можете попробовать использовать \\n вместо \n

person Sripaul    schedule 31.03.2011