Как определить и проверить файл OOXML?

Мне нужно иметь возможность определить, что данный файл является файлом OOXML, основываясь на содержимом файла, а не на расширении файла.

Файлы OOXML на самом деле представляют собой набор XML и текстовых файлов в zip-контейнере, а это означает, что я не могу использовать магический номер файла, поскольку он просто указывает, что это zip-файл.

Итак, я действительно спрашиваю, есть ли какие-либо файлы, которые требуются для присутствия в контейнере OOXML Open Packaging Convention (OPC)? Если да, то присутствие этого файла в контейнере OPC указывает, что это, скорее всего, файл OOXML, а отсутствие этого файла указывает на то, что это определенно не файл OOXML.

Этот вопрос является версией OOXML этого вопроса ODF.


person jwaddell    schedule 30.11.2009    source источник


Ответы (2)


Да, есть способ. Перейдите на сайт OpenXMLDeveloper.org и загрузите PPTX "02: Пакеты Open XML» (Презентация 02). Затем на слайде 12 рассказывается, как идентифицировать документ Open XML. Это document.xml, файлы rels и файл [Content_Types].xml (самый важный элемент ContentType). Здесь важно использовать то, что находится внутри файла, а не саму файловую структуру (Соглашение об открытой упаковке).

Другой замечательный ресурс — Объяснение разметки Open XML. . Глава 1, а затем «Настройка основного документа» — отличное место, чтобы узнать о структуре docx Word. Структуры Excel и PowerPoint перечислены ниже.

person Todd Main    schedule 04.12.2009