2016-04-22 3 views
9

При разработке графического интерфейса с Java FX я, похоже, получаю разные результаты с помощью System.getProperty («line.separator»); и "\ n" во время записи в файл или получения данных из Интернета. В чем разница?Разница между System.getProperty ("line.separator"); и н" ?

+0

Существует несколько очень связанных вопросов. Я не уверен, что один из них отлично квалифицируется как дубликат, но, по крайней мере, на ваш вопрос в основном ответят здесь: http://stackoverflow.com/a/33505978/3182664 – Marco13

ответ

18

System.getProperty("line.separator") возвращает разделитель линии, зависящий от ОС.

В Windows возвращается "\r\n", на Unix "\n". Поэтому, если вы хотите создать файл с окончанием строки для текущих операционных систем, используйте System.getProperty("line.separator") или напишите, используя PrintWriter.

+0

Итак, как вы думаете, что лучше? Предложите пожалуйста. –

+0

@TilakMadichetti зависит от варианта использования. Если вы хотите, чтобы разрывы строк для вашей текущей ОС использовали первую форму. Что вы хотите написать? – wero

+0

Я хочу написать огромный список слов в файл и один пробел в строке b/w каждое слово. –

7

на платформе Windows, System.getProperty ("line.separator") является "\ г \ п", "\ п" (Linux и MacOS X), "\ г" (MacOS 9 и старше)

+0

Вы получаете мой отзыв для упоминания более старой строки '\ r' разделители! – Aaron

+0

lol, вы видели, что @Aaron - Bad Aaron! –

7

System.getProperty("line.separator") является платформо-зависимый:

  • "\ п" на машинах типа UNIX
  • "\ г \ п" на машинах Windows,

в то время как "\ п" только «\ п ».

2

«\ n» - это разделитель строк для большинства операционных систем, таких как Linux/Unix. Чтобы обеспечить совместимость с любой операционной системой, запросите это значение с помощью System.getproperty

Смежные вопросы