2010-06-18 11 views
22

Myślałem sobie, że problem z przełamaniem linii musi być nieco rozwiązany przez kogoś, ale być może nie jest powszechnie stosowany. Myśląc przyszłościowo, poszedłem do wyszukiwania, aby zobaczyć, czy istnieje niezależna od platformy metoda unicode w celu oddzielenia linii. Podczas moich poszukiwań znalazłem postać Unicode 2028. Następnie znalazłem Jeffa Atwooda post on this topic, w którym wspomniał, że "... nie jest pewien, w jakich okolicznościach chciałbyś te markery nowej linii Unicode."Do czego służy znak Unicode 2028 (LS/Line Separator)?

Cóż, ja też. Zrobiłem małe kopanie w kodzie źródłowym C# i wygląda na to, że LS (x2028) nie jest obsługiwany przez TextReader.ReadLine() i nie jest również obsługiwany w Java BufferedReader.ReadLine(). Mój wniosek jest taki, że nie jest on szeroko wspierany.

Chciałbym mieć świetlaną przyszłość, w której mogę pisać pliki w jednym formacie w systemach Linux, MacOS i Windows. Czy ta mała postać ma obietnicę? Do czego jest obecnie używany?

Odpowiedz

7

ponacinane z komentarzem McDowell jest na tej samej stronie, a pośrednio od the Unicode docs:

Tradycyjnie NLF zaczynał jako separator linii (i czasami rekordowo separatora). Jest nadal używany jako separator linii w prostych edytorach tekstu, takich jak edytory programów. Ponieważ platformy i programy zaczęły obsługiwać przetwarzanie tekstu z automatycznym zawijaniem linii, te znaki zostały ponownie zinterpretowane jako separatory akapitu. Na przykład nawet takie proste programy, jak program Notatnik systemu Windows i program Mac SimpleText, interpretują NLF swojej platformy jako separator akapitu, a nie separator linii.

NLF (Nowa funkcja linii) w tym kontekście jest skrótem dla CR, LF i CRLF. Natomiast dwa znaki Unicode mają jednoznaczne zastosowania.

+0

Dzięki za link do dokumentacji Unicode! Wchodzą bardziej w "LS" (2028). To jest jakaś opcja dla 'CR' lub' LF'. Dalej: "Separator linii wskazuje miejsce, w którym powinno nastąpić przerwanie wiersza, zwykle w akapicie. ... Dla porównania, separatory linii zasadniczo odpowiadają HTML
" – BurninLeo

+0

Ma kolejną zaletę - w pliku rozdzielanym przecinkami lub tabulator może zamień znaki nowej linii w kolumnie wielowierszowej, nie komplikując przetwarzania pliku (na przykład za pomocą prostych narzędzi do obsługi potoków powłoki). –