1

在工作中,我有两个 Word 文档,它们代表相同文档的不同版本。我想比较并提取差异,我想我想将 word 文档转换为文本文件,然后对其进行比较。这可能吗?谢谢。

4

1 回答 1

1

如果您在系统中安装了 Word,您可以使用 activeX Word 自动化对象来提取文本。使用这个简单的、未经测试的代码来帮助您入门

word = WIN32OLE.new('Word.Application');
worddoc = word.Documents.Open(filename);
text = worddoc.content.text;

如果您没有 Word 或不想要求您的用户安装 Word,那么您不妨多花点力气提取文本。该词使用的最新 .docx 格式只不过是 zip 存档中的 Open XML Office 文件。所以,你只需要解压 .docx 文件,在 word 文件夹中搜索代表文档内容的 xml 文件;并通过解析 XML(DOM 或 SAX 或 PORO 或 ..)简单地提取文本。

于 2012-06-03T17:55:04.403 回答