Как получить зависимый от платформы новый символ линии?

Как получить зависимую от платформы новую строку в Java? Я не могу использовать "\n" всюду.

9 Solutions collect form web for “Как получить зависимый от платформы новый символ линии?”

В дополнение к свойству line.separator, если вы используете java 1.5 или новее и String.format (или другие методы форматирования ), вы можете использовать %n как в

 Calendar c = ...; String s = String.format("Duke's Birthday: %1$tm %1$te,%1$tY%n", c); //Note `%n` at end of line ^^ String s2 = String.format("Use %%n as a platform independent newline.%n"); // %% becomes % ^^ // and `%n` becomes newline ^^ 

Подробнее см. API Java 1.8 для Formatter .

Вы можете использовать

 System.getProperty("line.separator"); 

получить разделитель строк

Java 7 теперь имеет метод System.lineSeparator() .

Если вы пытаетесь написать новую строку в файле, вы можете просто использовать метод newLine () BufferedWriter.

Это также возможно: String.format("%n") .

Или String.format("%n").intern() для сохранения нескольких байтов.

Библиотека commons-lang имеет постоянное поле, доступное под названием SystemUtils.LINE_SEPARATOR

Если вы пишете файл, используя экземпляр BufferedWriter , используйте метод newLine() этого экземпляра. Он обеспечивает независимый от платформы способ записи новой строки в файл.

 StringBuilder newLine=new StringBuilder(); newLine.append("abc"); newline.append(System.getProperty("line.separator")); newline.append("def"); String output=newline.toString(); 

Вышеприведенный fragment будет иметь две строки, разделенные новой строкой независимо от платформ.

Избегайте добавления строк с помощью String + String и т. Д. Вместо этого используйте StringBuilder.

 String separator = System.getProperty( "line.separator" ); StringBuilder lines = new StringBuilder( line1 ); lines.append( separator ); lines.append( line2 ); lines.append( separator ); String result = lines.toString( ); 
  • Как добавить новую строку (разрыв строки) в файле XML?
  • Как удалить (chomp) завершающую новую строку в Python?
  • Давайте будем гением компьютера.