我需要打开 MS Word 文件 (.doc) 并提取其组成文件(“[1]CompObj”、“WordDocument”等)。像 7-zip 这样的东西可以用来手动执行此操作,但我需要以编程方式执行此操作。
我发现 Word 文档是一个 OLE 容器(因此可以使用 7-zip 查看其内容),但我不知道如何(使用 C++):
- 打开OLE容器
- 提取每个组成文件并将其保存到磁盘
我发现了几个 OLE 自动化的例子(例如here http://www.codeproject.com/KB/office/MSOfficeAuto.aspx)但我想做的似乎不太常见,而且我没有找到具体的例子。
如果有人对使用 OLE 的 API(?!)和教程有任何想法,我将不胜感激。任何代码示例也是如此。
它称为复合文件,是结构化存储 API 的一部分。您从 StgOpenStorageEx() 开始。对于 Word .doc 文件来说,它的成本很低,流本身具有复杂的二进制格式。到really读取文档内容要使用自动化,让Word读取文件。这在 C++ 中很少实现,但该项目向您展示了如何实现。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)