Подтвердить что ты не робот

Что такое символ юникода 2028 (LS/Line Separator)?

Я думал про себя, что проблема нарушения линии должна быть несколько решена кем-то, но, возможно, не получила широкого распространения. Будучи передовым мышлением, я пошел искать, чтобы определить, существует ли независимый от платформы метод unicode для разделения строк. В моем поиске я нашел символ юникода 2028. Затем я нашел Jeff Atwoods сообщение в этом разделе, где он упоминает, что он "... не уверен в какие обстоятельства вам нужны эти маркеры Unicode newline."

Ну, и я тоже. Я немного искал исходный код С#, и похоже, что LS (x2028) не поддерживается TextReader.ReadLine(), но также не поддерживается в Java BufferedReader.ReadLine(). Итак, мой вывод состоит в том, что он не получил широкого распространения.

Я хотел бы иметь светлое будущее, где я могу писать файлы, используя один формат в Linux, MacOS и Windows. Означает ли этот маленький персонаж обещание? Для чего он используется в настоящее время?

4b9b3361

Ответ 1

Вызывается из комментарий McDowell на той же странице и косвенно из Документы Unicode:

Традиционно NLF начинался как разделитель строк (и иногда записывал разделитель). Он по-прежнему используется как разделитель строк в простых текстовых редакторах, таких как редакторы программ. Поскольку платформы и программы начали обрабатывать обработку текстов с помощью автоматического переноса строки, эти символы были переинтерпретированы, чтобы обозначать разделители абзацев. Например, даже такие простые программы, как программа Windows Notepad и программа Mac SimpleText, интерпретируют свои платформы NLF как разделитель абзацев, а не разделитель строк.

NLF (функция новой строки) в этом контексте является сокращением для CR, LF и CRLF. Напротив, два символа Unicode имеют однозначное использование.