Формат обмена данными

Формат файла электронной таблицы

Формат обмена данными (.dif) — это текстовый формат файла , используемый для импорта/экспорта отдельных электронных таблиц между программами электронных таблиц.

Приложения, которые все еще поддерживают формат DIF, это Collabora Online , Excel , [примечание 1] Gnumeric и LibreOffice Calc . Исторические приложения, которые поддерживали его до окончания срока службы или до того, как перестали признавать поддержку формата, это dBase , FileMaker , Framework , Lotus 1-2-3 , Multiplan , OpenOffice.org Calc и StarCalc . [1] [2]

Ограничением формата DIF является то, что он не может обрабатывать несколько электронных таблиц в одной рабочей книге. Из-за схожести аббревиатуры и возраста (оба относятся к началу 1980-х годов) формат электронных таблиц DIF часто путают с Navy DIF ; Navy DIF, однако, является несвязанным «форматом обмена документами» для текстовых процессоров. [3]

История

DIF был разработан компанией Software Arts, Inc. (разработчиками программы VisiCalc ) в начале 1980-х годов. Спецификация была включена во многие копии VisiCalc и опубликована в журнале Byte Magazine . Боб Фрэнкстон разработал формат при участии других, включая Митча Капора , который помог, чтобы он мог работать с его программой VisiPlot. (Позже Капор основал Lotus и создал Lotus 1-2-3 .) Спецификация была защищена авторским правом 1981 года.

DIF был зарегистрированной торговой маркой Software Arts Products Corp. (в то время это было официальное название Software Arts).

Синтаксис

DIF хранит все в текстовом файле ASCII , чтобы смягчить многие кроссплатформенные проблемы еще в дни его создания. Однако современное программное обеспечение для работы с электронными таблицами, например OpenOffice.org Calc и Gnumeric , предлагает больше кодировок символов для экспорта/импорта. Файл разделен на 2 раздела: заголовок и данные. Все в DIF представлено 2- или 3-строчным фрагментом. Заголовки получают 3-строчный фрагмент; данные - 2. Фрагменты заголовков начинаются с текстового идентификатора, который полностью состоит из заглавных букв, только из буквенных символов и менее чем из 32 букв. Следующая строка должна быть парой цифр, а третья строка должна быть строкой в ​​кавычках. С другой стороны, фрагменты данных начинаются с пары цифр, а следующая строка - это строка в кавычках или ключевое слово.

Ценности

Значение занимает две строки, первая — пара чисел, а вторая — либо строка, либо ключевое слово. Первое число пары указывает тип:

  • −1 – тип директивы, вторая цифра игнорируется, следующая строка является одним из этих ключевых слов:
    • BOT – начало кортежа (начало строки)
    • EOD – конец данных
  • 0 – числовой тип, значение – второе число, следующая строка – одно из следующих ключевых слов:
    • В – действителен
    • NA – недоступно
    • ОШИБКА – ошибка
    • ИСТИНА – истинное логическое значение
    • ЛОЖЬ – ложное логическое значение
  • 1 – тип строки, вторая цифра игнорируется, следующая строка – строка в двойных кавычках

Заголовок фрагмента

Заголовочный фрагмент состоит из строки идентификатора, за которой следуют две строки значения.

  • ТАБЛИЦА - за версией следует числовое значение, неиспользуемая вторая строка значения содержит комментарий генератора
  • ВЕКТОРЫ - количество столбцов указывается в виде числового значения
  • TUPLES - количество строк указывается в виде числового значения
  • ДАННЫЕ - после фиктивного числового значения 0 следуют данные таблицы, каждой строке предшествует значение BOT, вся таблица завершается значением EOD

Числовые значения в заголовочных фрагментах используют просто пустую строку вместо ключевых слов валидности.

Расхождения в реализациях

Некоторые реализации (особенно те, что относятся к старым продуктам Microsoft) поменяли местами значения VECTORS и TUPLES. Некоторые реализации нечувствительны к ошибкам в измерениях таблицы, как указано в заголовке, и просто используют макет в разделе DATA.

Пример

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

ТекстЧисло
привет1
имеет двойные кавычки " в тексте−3

В файле .dif это будет выглядеть так (→ обозначает комментарии):

СТОЛ0,1"ЭКСЕЛЬ"ВЕКТОРЫ → количество столбцов следует в виде числового значения0,2 → «0» указывает на числовой тип, «2» — на то, что у нас 2 столбца.""КОРТЕЖИ → количество строк следует в виде числового значения0,3 → «0» указывает на числовой тип, «3» — поскольку у нас 3 строки.""ДАННЫЕ → после фиктивного числового значения 0 следуют данные для таблицы0,0 → это фиктивное числовое значение 0""-1,0 → '-1' для типа директивы. Далее следует 'BOT' или 'EOD'BOT → обозначает начало ряда1,0 → «1», так как ячейка содержит строку. (Второе число игнорируется)«Текст» → это строка, которая находится в ячейке1,0 → «1», так как ячейка содержит строку."Число"-1,0 БОТ → еще одна строка1,0 → далее следует строка"привет"0,1 → числовое значение («0») значения «1»V → «V» означает «Действительный»-1,0БОТ → еще одна строка1,0"в тексте есть двойные кавычки"0,-3В-1,0EOD → Конец данных

Смотрите также

Примечания

  1. ^ Реализация Microsoft Excel вызвала проблемы взаимодействия, см. § Различия в реализациях.

Ссылки

  1. ^ "LibreOffice Calc – Поддерживаемые форматы файлов". LibreOfficeHelp.com . 2020-10-06. Архивировано из оригинала 2016-12-13 . Получено 2020-09-08 .
  2. ^ "Форматы файлов, поддерживаемые в Excel". support.microsoft.com . Архивировано из оригинала 2020-11-11 . Получено 2021-09-08 .
  3. Петроски, Мэри (5 августа 1985 г.). «Рынок преобразования файлов растёт». InfoWorld . Т. 7, № 31. С.  36–37 .«Среди форматов файлов, разработанных для упрощения обмена текстовыми файлами между микрокомпьютерами, на которых установлено различное программное обеспечение для обработки текстов, наибольшей поддержкой, по-видимому, пользуются Document Content Architecture (DCA) компании IBM и формат обмена документами ВМС США (DIF)».

Источники

  • Анонс DIF Clearinghouse от Software Arts Products Corp.
Получено с "https://en.wikipedia.org/w/index.php?title=Data_Interchange_Format&oldid=1260540199"