Jump to content

Значения, разделенные разделителями

(Перенаправлено с разделителей Pipe )
Значения, разделенные разделителями
Единый идентификатор типа (UTI) public.delimited-values-text [1]

Форматы, в которых используются значения, разделенные разделителями (также DSV ). [2] : 113  хранить двумерные массивы данных, разделяя значения в каждой строке определенными -разделителями символами . Большинство программ баз данных и электронных таблиц могут читать или сохранять данные в формате с разделителями. Благодаря широкой поддержке файлы DSV можно использовать для обмена данными между многими приложениями.

Текстовый файл с разделителями — это текстовый файл , используемый для хранения данных, в котором каждая строка представляет одну книгу, компанию или другой объект, а каждая строка имеет поля, разделенные разделителем. [3] По сравнению с плоским файлом , в котором для придания каждому полю одинаковой ширины используются пробелы, файл с разделителями имеет то преимущество, что позволяет использовать значения полей любой длины. [4]

Форматы с разделителями

[ редактировать ]

Для разделения значений можно использовать любой символ, но наиболее распространенными разделителями являются запятая , табуляция и двоеточие . [2] : 113  [5] вертикальная черта (также называемая трубой ) и пробел . Иногда также используются [2] : 113  Заголовки столбцов иногда включаются в первую строку, а каждая последующая строка представляет собой строку данных. Строки разделяются символами новой строки .

Например, следующие поля в каждой записи разделяются запятыми, а каждая запись — символами новой строки:

"Date","Pupil","Grade"
"25 May","Bloggs, Fred","C"
"25 May","Doe, Jane","B"
"15 July","Bloggs, Fred","A"
"15 April","Muniz, Alvin ""Hank""","A"

Обратите внимание на использование двойной кавычки для заключения каждого поля. Это предотвращает интерпретацию запятой в фактическом значении поля (Блоггс, Фред; Доу, Джейн и т. д.) как разделителя полей. Это требует способа « избежать » самой оболочки поля, в данном случае двойной кавычки; принято удваивать двойные кавычки, фактически содержащиеся в поле, как и в случае с «Хэнком». Таким образом, ASCII в поле может содержаться любой текст , включая символы новой строки.

ASCII и Unicode включают несколько управляющих символов , которые предназначены для использования в качестве разделителей. Это: 28 для разделителя файлов , 29 для разделителя групп , 30 для разделителя записей и 31 для разделителя единиц . Примером такого использования является MARC 21. формат библиографических данных [6] . Использование этих символов не получило широкого распространения; некоторые системы заменили свои свойства управления более приемлемыми элементами управления, такими как CR/LF и TAB. [ нужна ссылка ]

Использование и применение

[ редактировать ]

Благодаря широкому распространению текстовые файлы, разделенные запятыми и знаками табуляции, могут быть открыты несколькими типами приложений, включая большинство программ для работы с электронными таблицами и статистических пакетов , иногда даже без указания пользователем того, какой разделитель использовался. [7] [8] Несмотря на то, что каждое из этих приложений имеет собственную структуру базы данных и собственный формат файла (например, accdb или xlsx), все они могут сопоставлять поля в файле DSV со своей собственной моделью и форматом данных . [ нужна ссылка ]

Обычно формат файла с разделителями указывается в спецификации. В некоторых спецификациях предусмотрены соглашения, позволяющие избежать столкновения разделителей , в других — нет. Конфликт разделителей — это проблема, которая возникает, когда символ, который должен быть частью данных, вместо этого интерпретируется как разделитель. Форматы, разделенные запятыми и пробелами, часто страдают от этой проблемы, поскольку во многих контекстах эти символы являются допустимыми частями поля данных. В большинстве таких файлов конфликты разделителей избегаются либо путем заключения всех полей данных в двойные кавычки, либо путем заключения в кавычки только тех полей данных, которые содержат символ-разделитель. Одна из проблем с текстовыми файлами, разделенными табуляцией, заключается в том, что табуляцию трудно отличить от пробелов; поэтому иногда возникают проблемы с повреждением файлов, когда люди пытаются редактировать их вручную. Другой набор проблем возникает из-за ошибок в структуре файла, обычно при импорте файла в базу данных (в приведенном выше примере такой ошибкой может быть отсутствие имени ученика).

В зависимости от самих данных может быть полезно использовать в качестве разделителей нестандартные символы, такие как тильда (~). С ростом популярности веб-сайтов и других приложений, хранящих фрагменты кода в базах данных, простого использования ", который встречается в каждой гиперссылке и теге источника изображения, просто недостаточно, чтобы избежать коллизий такого типа. Поскольку двоеточия (:), точки с запятой (;), каналы (|) и многие другие символы также используются, поэтому может быть довольно сложно найти символ, который не используется где-либо еще.

См. также

[ редактировать ]

Примечания и ссылки

[ редактировать ]
  1. ^ «UTTypeDelimitedText» . Документация разработчика Apple: унифицированные идентификаторы типов . Apple Inc.
  2. ^ Перейти обратно: а б с DSV означает значения, разделенные разделителями. Раймонд, Эрик (2004). Искусство программирования для Unix . Бостон: Аддисон-Уэсли. ISBN  0-13-142901-9 .
  3. ^ Стивен Р. Вестман. «Создание веб-страниц библиотеки на основе базы данных: использование инструментов с открытым исходным кодом» . 2006. Раздел «Структурированные текстовые файлы». п. 15.
  4. ^ Ричард Петерсен. «Вводная информация о командной строке Unix для пользователей» . 2006. п. 356.
  5. ^ В UNIX двоеточие является наиболее распространенным разделителем DSV для значений, которые могут содержать пробелы. Там же .
  6. ^ «Наборы символов: общие проблемы с наборами символов: спецификации MARC 21 для структуры записей, наборов символов и носителей обмена» . Библиотека Конгресса . 2007 . Проверено 2 августа 2024 г.
  7. ^ Найт, Эндрю (2000). Основы Matlab и не только . Бока-Ратон: Чепмен и Холл/CRC. ISBN  0-8493-2039-9 .
  8. ^ Роббинс, Арнольд (2005). Классический сценарий оболочки . Севастополь: О'Рейли. ISBN  0-596-00595-4 .

Дальнейшее чтение

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: b3addb16be89288d0cd7eb5c01bd50a1__1722591960
URL1:https://arc.ask3.ru/arc/aa/b3/a1/b3addb16be89288d0cd7eb5c01bd50a1.html
Заголовок, (Title) документа по адресу, URL1:
Delimiter-separated values - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)