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


Содержание
  1. Что такое перенос строки
  2. Курсы по программированию на Хекслете
  3. Backend-разработка
  4. Frontend-разработка
  5. Создание сайтов
  6. Тестирование
  7. Аналитика данных
  8. Интенсивные курсы
  9. DevOps
  10. Веб-разработка
  11. Математика для программистов
  12. JavaScript
  13. Python
  14. Java
  15. PHP
  16. Ruby
  17. Go
  18. HTML
  19. SQL
  20. Git
  21. Похожие вопросы
  22. Курсы по программированию на Хекслете
  23. Backend-разработка
  24. Frontend-разработка
  25. Создание сайтов
  26. Тестирование
  27. Аналитика данных
  28. Интенсивные курсы
  29. DevOps
  30. Веб-разработка
  31. Математика для программистов
  32. JavaScript
  33. Python
  34. Java
  35. PHP
  36. Ruby
  37. Go
  38. HTML
  39. SQL
  40. Git
  41. Похожие вопросы
  42. Курсы по программированию на Хекслете
  43. Backend-разработка
  44. Frontend-разработка
  45. Создание сайтов
  46. Тестирование
  47. Аналитика данных
  48. Интенсивные курсы
  49. DevOps
  50. Веб-разработка
  51. Математика для программистов
  52. JavaScript
  53. 179 бронзовых знаков
  54. ответ дан 5 дек 2012 в 8:53 Гэри Дэвис 15 серебряных знаков 12 бронзовых знаков
  55. ответ дан 5 дек 2012 в 8:53
  56. Я тоже пробовал вместо . System.getProperty(«line.separator») тоже не работает. он производит в строке и без возврата каретки. Итак, как я могу это решить?
  57. Допустим, у вас есть строка, требование, которое выводится в консоль:
  58. Способ первый – захардкодить перенос строки

Что такое перенос строки

Перенос строки, он же перенос каретки это один или несколько спецсимволов, означающие окончание текущей строки символов и перевод картеки на новую строку. В зависимости от операционной системы используются разные спецсимволы. Например, в Windows используются спецсимволы CR + LF:

Спецсимволу CR
соответсвует альт-код 13, а спецсимволу LF
альт-код 10. Кстати, CR
означает carriage return

(возврат каретки), а LF
это line feed

(перевод строки). Управляющая последовательность \r\n
или \n
как раз и обозначает перевод строки в Си подобных языках программирования.

Подскажите пожалуйста, как мне записать такую строку в String

Ля-ля-ля ля-ля-ля

Ля-ля-ля ля-ля-ля

   String s1="Ля-ля-ля ля-ля-ля"+"Ля-ля-ля ля-ля-ля";
  
  

NeatBeans предлагает только конкатенацию строк. А как все-таки записать с учетом переноса строки.

Nick Volynkin's user avatar

25 золотых знаков
130 серебряных знаков
221 бронзовый знак

задан 2 окт 2012 в 15:43

aaaaa1aaaaa's user avatar

2 золотых знака
5 серебряных знаков
12 бронзовых знаков

   String s1 = "Ля-ля-ля ля-ля-ля"+ "\n" + "Ля-ля-ля ля-ля-ля";
  
  

ответ дан 2 окт 2012 в 15:46

skegg's user avatar

Используй System.lineSeparator()
. Это сделает перевод строки и в Windows и в Linux.

   String s1="Ля-ля-ля ля-ля-ля"+System.lineSeparator()+"Ля-ля-ля ля-ля-ля";
  
  

ответ дан 5 окт 2016 в 13:04

Александр Колобов's user avatar

   String s1 = "Ля-ля-ля ля-ля-ля\nЛя-ля-ля ля-ля-ля";
  
  

(или то же, но с конкатенацией) будет самым частым ответом, причём для многих C-подобных языков.
Перевод строки
на разных платформах и их версиях может быть разным, но в Java используются Unicode-cтроки, так что работает \n
.

Однако в случае форматированных строк, чтобы вставить платформо-зависимый разделитель строк, нужно
использовать символ «%n»
:

   String s1 = String.format("%s%n%s", "Ля-ля-ля ля-ля-ля", "Ля-ля-ля ля-ля-ля");
  
  

— (в данном случае на место «%s»
подставятся второй и третий аргумент метода format()
)

ответ дан 22 янв 2019 в 20:00

Nimtar's user avatar

2 бронзовых знака

   String song = "La-la-la \n LaaaaaLaaaaa \n";
  
  

Nick Volynkin's user avatar

25 золотых знаков
130 серебряных знаков
221 бронзовый знак

ответ дан 11 фев 2016 в 13:23

EvGen's user avatar

1 бронзовый знак

Аватар пользователя Иван Полежаев

Чтобы перенести строку в Java
, вы можете использовать символ переноса строки \n

Например:

      "Это первая строка\nЭто вторая строка"

  
  
   Это первая строка
Это вторая строка
  
  

Курсы по программированию на Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Обложка категории Backend-разработка

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Обложка категории Frontend-разработка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Обложка категории Создание сайтов

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Обложка категории Тестирование

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Обложка категории Аналитика данных

Интенсивные курсы

Интенсивное обучение для продолжающих

Обложка категории Интенсивные курсы

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Читайте также:  Фсс ленинского района г саратова телефон

Обложка категории DevOps

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Обложка категории Веб-разработка

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

Обложка категории Математика для программистов

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Обложка категории JavaScript

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Обложка категории Python

Java

Веб-разработка и автоматическое тестирование на Java

Обложка категории Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Обложка категории PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Обложка категории Ruby

Go

Курсы по веб-разработке на языке Go

Обложка категории Go

HTML

Современная верстка с помощью HTML и CSS

Обложка категории HTML

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Обложка категории SQL

Git

Система управления версиями Git, регулярные выражения и основы командой строки

Обложка категории Git

Похожие вопросы

Аватар пользователя Maksim Litvinov

В Java, чтобы сделать перенос на новую строку, можно использовать специальный символ – \n
Это символ перевода строки. Попробуем вывести на экран такую строку:

   "- Are you hungry?\n- Aaaarrrgh!"
  
  

Результат на экране будет следующий:

   - Are you hungry?
- Aaaarrrgh!
  
  

Курсы по программированию на Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Обложка категории Backend-разработка

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Обложка категории Frontend-разработка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Обложка категории Создание сайтов

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Обложка категории Тестирование

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Обложка категории Аналитика данных

Интенсивные курсы

Интенсивное обучение для продолжающих

Обложка категории Интенсивные курсы

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Обложка категории DevOps

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Обложка категории Веб-разработка

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

Обложка категории Математика для программистов

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Обложка категории JavaScript

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Обложка категории Python

Java

Веб-разработка и автоматическое тестирование на Java

Обложка категории Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Обложка категории PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Обложка категории Ruby

Go

Курсы по веб-разработке на языке Go

Обложка категории Go

HTML

Современная верстка с помощью HTML и CSS

Обложка категории HTML

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Обложка категории SQL

Git

Система управления версиями Git, регулярные выражения и основы командой строки

Обложка категории Git

Похожие вопросы

Аватар пользователя Maksim Litvinov

В Java, чтобы перейти на новую строку, можно использовать специальный символ – \n. Это символ перевода строки. Попробуем вывести на экран такую строку:

System.out.println(«- Are you hungry?\n- Aaaarrrgh!»);
Результат на экране будет следующий:

  • Are you hungry?
  • Aaaarrrgh!

Курсы по программированию на Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Обложка категории Backend-разработка

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Обложка категории Frontend-разработка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Обложка категории Создание сайтов

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Обложка категории Тестирование

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Обложка категории Аналитика данных

Интенсивные курсы

Интенсивное обучение для продолжающих

Обложка категории Интенсивные курсы

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Обложка категории DevOps

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Обложка категории Веб-разработка

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

Обложка категории Математика для программистов

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Обложка категории JavaScript

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Обложка категории Ruby Веб-разработка и автоматическое тестирование на Java

PHP Обложка категории Go

Веб-разработка и автоматическое тестирование на PHP

Обложка категории HTML Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Обложка категории SQL

Go
Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

Обложка категории SQL

2 золотых значка Обложка категории Git

12 серебряных знаков

29 бронзовых знаков

Если вы записываете в файл, используйте

например, используйте

    метод этого экземпляра. Он обеспечивает независимый от платформы способ записи новой строки в файл.

  • ответ дан 20 янв. 2012 в 12:24

  • Начиная с JDK 1.1, класс BufferedWriter имел метод «newLine()», который записывал новую строку, зависящую от платформы. Он также предоставил класс StringWriter, позволяющий извлечь новую строку:

  • ответ дан

    7 окт. 2022 в 18:10

    1 серебряный значок
    Аватар пользователя Maksim Litvinov 3 бронзовых знака

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

  • 72 золотых знака

    174 серебряных знака
    218 ​​бронзовых знаков

    ответ дан

    5 дек 2012 в 8:53

    Обложка категории Backend-разработка

    Гэри Дэвис

    15 серебряных знаков

    12 бронзовых знаков

    Обложка категории Frontend-разработка

    Я тоже пробовал

    вместо

    . System.getProperty(«line.separator») тоже не работает. он производит

    в строке и без возврата каретки. Итак, как я могу это решить?

    спросил Обложка категории Go 3 апр. 2012, 8:08

    Это зависит от того, что вы подразумеваете под «несколько строк». В разных операционных системах используются разные разделители строк.

    На Яве,

    всегда является возвратом каретки и

    это перевод строки. В Unix всего Обложка категории HTML
    достаточно для новой строки, тогда как многие программы в Windows требуют

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

    или используйте

    как упоминалось в других ответах.

    Но на самом деле, тебе нужно знать, пытаешься ли ты
    для создания новых строк, специфичных для ОС — например, если это текст, который будет передаваться как часть определенного протокола, то вы должны увидеть, что этот протокол
    считается новой строкой. Например, RFC 2822
    определяет разделитель строк \r\n
    и это следует использовать , даже если вы работаете в Unix
    . Так что все дело в контексте.

    ответ дан 3 апр. 2012 в 8:15

    Jon Skeet's user avatar

    Джон Скит

    868 золотых знаков
    9131 серебряный знак
    9197 бронзовых знаков

    Самый быстрый известный мне способ создания символа новой строки в Java: String.format("%n")

    Конечно, вы можете разместить все, что захотите, вокруг %n
    нравится:

    Или даже если у вас много строк:

    String.format("%s%n%s%n%s%n%s", "line1", "line2", "line3", "line4")

    ответ дан 3 апр. 2012 в 8:14

    Jesus is Lord's user avatar

    Иисус Господь
    Иисус — Господь

    11 золотых знаков
    66 серебряных знаков
    97 бронзовых знаков

    Попробуй \r\n
    где \r
    это возврат каретки. Также убедитесь, что в выводе нет новой строки, поскольку отладчик может отображать специальные символы в виде \n.
    , \r
    , \t
    и т. д.

    ответ дан 3 апр. 2012 в 8:09

    Michał Niklas's user avatar

    Михал Никлас

    18 золотых знаков
    70 серебряных знаков
    114 бронзовых знаков

    Сделайте это:
    Шаг 1: Ваша строка

     String str = ";;;;;;\n" +
                "Name, number, address;;;;;;\n" + 
                 "01.01.12-16.02.12;;;;;;\n" + 
                 ";;;;;;\n" + 
                 ";;;;;;";
    
      

    Шаг 2: Просто замените все «\n» на «%n», результат будет выглядеть так

     String str = ";;;;;;%n" +
                 "Name, number, address;;;;;;%n" + 
                 "01.01.12-16.02.12;;;;;;%n" + 
                ";;;;;;%n" + 
                ";;;;;;";
    
      

    Обратите внимание, я только что поставил «%n» вместо «\n»

    .

    Шаг 3: Теперь просто вызовите format()

     str=String.format(str);
    
      

    Это все, что вам нужно сделать.

    ответ дан 29 апр 2014 в 1:50

    Amit Deo Panwar's user avatar

    Попробуйте добавить символы .append('\r').append('\n');
    вместо строки .append("\\r\\n");

    ответ дан 2 фев 2016 в 14:15

    Xdg's user avatar

    2 золотых значка
    27 серебряных знаков
    43 бронзовых знака

    Спасибо за ваши ответы. Я пропустил, что мои данные хранятся в List<String>
    который передается тестируемому методу. Ошибка заключалась в том, что я поместил строку в первый элемент ArrayList. Вот почему я думал, что строка состоит всего из одной строки, потому что отладчик показал мне только одну запись.

    ответ дан 3 апр. 2012 в 8:35

    Bevor's user avatar

    15 золотых значков
    77 серебряных знаков

    141 бронзовый знак

    Способность вторая – портативный и правильный

    Обложка категории Backend-разработка Если вы не хотите писать символы

    Каждый раз, когда вы хотите перенести строку – вы можете воспользоваться стандартным методом

    .
    , который возвращает строки переноса для этой системы, в которой сейчас работает ваша программа. Это очень полезно, если программа запускается и в Windows, и в Linux.

    Просто викор

    в том месте, где вам нужно создать новый символ:

    String MultipleLines = «Привет»
    + System.lineSeparator() + «Java»
    + System.lineSeparator() + «Мир!»;
    System.out.println(несколько строк);

    Обложка категории Frontend-разработка

    Перенос строк в Java, с использованием стандартного System.lineSeparator()

    Итак, вы научились переводить строки на Java, используя два пути.
    Как перенести строки

    Допустим, у вас есть строка, требование, которое выводится в консоль:

    String oneLine = «Привет, мир Java!»;
    System.out.println(oneLine);

    При выводе в консоль вы увидите те же слова, части одного прямого текста, без переноса на новые строки. Как же нам добавить перенос строки в Java?

    Для разных операционных систем переносом строки являются разные управляющие символы:

    Для Windows это символы \r\n


    Для Linux, macOS и прочих *nix систем это \n

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

    Способ первый – захардкодить перенос строки

    Допустим, ваша программа на Java запускается в Linux. Вы просто добавляете символы \n
    в то место в строке, в котором вам нужно сделать перевод на новую строку:

      String multipleLines = "Hello\nJava\nWorld!";
    System.out.println(multipleLines);  

    Теперь, при использовании переносов строки, вы, вместо одной строки в консоли увидите три строки – по каждой на символы \n

    Как мне получить независимого от платформы символа новой строки?
    Перенос строки, используя символы переноса строки \n (для Linux)

    Но как же быть, если вы не хотите хардкодить символы переноса строки?

    Оцените статью
    ФСС Help
    Добавить комментарий