我最近了解了.docx文件的基本结构(它是一个特殊结构的zip存档)。但是,docx不像doc那样格式化。
doc文件如何工作?什么是文件格式,结构等?
答案 0 :(得分:14)
这不是你问题的直接答案,但我强烈建议阅读Joel Spolsky的文章Why are the Microsoft Office file formats so complicated? (And some workarounds)。它将让您深入了解.doc格式的复杂程度 - 以及原因。 Joel还给出了.doc格式包含的基本概述:
你看,Excel 97-2003文件是OLE复合文档,本质上是文件 单个文件中的系统。这些都非常复杂,你必须阅读 另外9页的规格来解决这个问题。而这些“规格”看起来更像是C数据 结构比我们传统上认为的规范。这是一个完整的分层文件 系统
(引用引用Excel文件,但它也适用于Word文档)。信息性文章,有助于理解为什么.docx和ODF文件在从外部角度进行检查时的结构和设计更加逻辑性。
答案 1 :(得分:11)
二进制.doc文件的完整格式记录在this pdf来自the Wikipedia article on .doc)
答案 2 :(得分:5)
MS Word DOC格式背后的基本思想是OLE Compund文档,正如Kibbee已经编写的那样,它基本上是一个内存转储。这是一种非常复杂和复杂的文档存储方式,但是如果你真的挖掘过应用程序Word,你就会知道它有多么疯狂的功能,如果你在商业环境中使用它,你会有一个好的感觉它如何与Office系列中的其他程序集成。
通常,OLE Compund文档是非常可扩展的结构,允许您将所有类型的数据填充到一个文件中,甚至在某种程度上处理您没有安装应用程序的数据。例如,如果将一个方程式对象(来自MS公式编辑器)插入到文档中,它将被存储为子对象,就像文件中的文件一样,但此对象不仅包含公式编辑器所需的数据为了编辑和渲染它,它还有一个通用的位图(或元文件,也许)表示存储,因此它可以在没有安装公式编辑器的机器上显示,但不能编辑。
这是为什么,对于如何,您必须阅读其他人已经链接到的规范;)
如果您希望使用简单的方法处理文件,请确保您的软件在安装了Word的Windows计算机上运行,然后使用COM / OLE自动化打开和操作文档。您不必担心文件格式。
答案 3 :(得分:1)
.doc格式非常复杂。与大多数Microsoft格式一样,它反映了版本和旧版支持之间的长期变化历史。他们不久前发布了它,所以如果你想查看它(和其他Office 2007之前的格式),knock yourself out here。
答案 4 :(得分:1)
Doc是word文档的二进制格式 - 这是Microsoft Office Word 97-2007 Binary File Format Specification [*.doc]文档。
答案 5 :(得分:0)