Вопрос

Недавно я узнал об базовой структуре файла .docx (это специально структурированный zip-архив).Однако docx отформатирован не так, как doc.

Как работает файл doc?Каков формат файла, структура и т.д.?

Это было полезно?

Решение

Полный формат двоичных файлов .doc задокументирован в этот pdf-файл из (статья в Википедии о .doc)

Другие советы

Это не прямой ответ на ваш вопрос, но я настоятельно рекомендую прочитать статью Джоэла Спольски, Почему форматы файлов Microsoft Office такие сложные?(И некоторые обходные пути).Это даст вам некоторое представление о том, насколько сложным на самом деле является формат .doc - и почему.Джоэл также дает очень общий обзор того, из чего состоит формат .doc:

Вы видите, в Excel 97-2003 файлы Оле составные документы, которые, по сути, файл систем внутри одного файла.Они достаточно сложны, так что вам придется прочитать еще 9-страничную спецификацию, чтобы разобраться в этом.И эти “спецификации” больше похожи на структуры данных C , чем на то, что мы традиционно считаем спецификацией.Это целая иерархическая файловая система.

(Цитата относится к файлам Excel, но она применима и к документам Word).Информативная статья, помогающая понять, почему файлы .docx и ODF структурируются и оформляются гораздо логичнее при рассмотрении со стороны.

Основная идея, лежащая в основе формата MS Word DOC, - это документ OLE Compund, который, как уже писал Kibbee, по сути, представляет собой дамп памяти.Это очень сложный и запутанный способ хранения документов, но если вы когда-нибудь по-настоящему разбирались в приложении Word, то знаете, каким безумно большим количеством функций оно обладает, и если вы использовали его в бизнес-среде, то получите хорошее представление о том, как оно интегрируется с другими программами серии Office.

В общем, документы OLE Compund представляют собой очень расширяемые структуры, которые позволяют вам помещать все виды данных в один файл и даже в некоторой степени обрабатывать данные, для которых у вас не установлено приложение.Например, если вы вставляете объект Equation (из MS Equation Editor) в документ, он сохраняется как подобъект, который подобен файлу внутри файла, но этот объект содержит не только данные, необходимые редактору Equation для их редактирования и визуализации, он также имеет общее растровое изображение (или, возможно, метафайл), сохраненное таким образом, что его можно отображать, хотя и не редактировать, на компьютере без установленного Equation Editor.

Это был тот самый почему, для как вам придется ознакомиться со спецификациями, на которые уже ссылались другие люди ;)

Однако, если вам нужен простой способ работы с файлами, убедитесь, что ваше программное обеспечение работает на компьютере с Windows и установлен Word, затем используйте COM / OLE Automation для открытия документов и манипулирования ими.Тогда вам не придется беспокоиться о формате файла.

Doc - это двоичный формат документа Word. Спецификация формата двоичного файла Microsoft Office Word 97-2007 [*.doc] документ.

Формат .doc довольно сложный.Как и большинство форматов Microsoft, он отражает долгую историю изменений между версиями и устаревшую поддержку.Они опубликовали его не так давно, так что если вы хотите просмотреть его (и другие форматы до Office 2007), выруби себя отсюда.

Есть файл Microsoft Word .doc, а затем есть обычный текст .doc.Похоже, вас интересует проприетарный формат Microsoft.

От Википедия:

Формат DOC варьируется в зависимости от форматов Microsoft Office Word.Версии Word до 97 использовали формат, отличный от Microsoft Word версии между 97 и 2003.

Это было только в Word 2007, где .docx, хотя и является упакованным файлом, не обязательно является zip-архивом.Это структурированный XML-документ.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top