ASCII delimited text

Вы знаете, что такое CSV? Забудьте.

Запятая — разделитель? Почему не точка? Почему не пробел? Почему не Tab? Да вы что, неужели и эти встречаются?

Запятая в тексте поля? Используете кавычки? А все об этом знают? Тогда заменяется на _? А _ на что заменяется?

Оставьте эту возню с реализациями другим! Давным-давно, ещё при создании стандарта ASCII, были изобретены четыре символа, которые нипочём не встретятся в текстах полей. Четыре разделителя с кодами 1F, 1E, 1D и 1C, благополучно перешедшие в Unicode, и всё же по непонятным причинам не применяющиеся как должно.

кодимяalso known asа зачем?
U+001FINFORMATION SEPARATOR ONE*unit separator (US)разделять поля записи
U+001EINFORMATION SEPARATOR TWO*record separator (RS)разделять записи
U+001DINFORMATION SEPARATOR THREE*group separator (GS)разделять группы записей или записи более высокого уровня
U+001CINFORMATION SEPARATOR FOUR*file separator (FS)разделять ещё более крупные группы

В случае CSV замена проста — запятые превращаются в US, новые строки — в RS, по пути закавыченное раскавычивается. Замена проста и необходима. Будущее в руках всех нас.

А ещё вот вам ссылка и ещё одна ссылка.

ASCII delimited text: 2 комментария

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

:) :D :( :E: ;) :yes: :no: :donno: more »

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.