【发布时间】:2008-10-18 21:55:30
【问题描述】:
如何在不这样做的情况下将 MS Word 文档(.doc 和 .docx)加载到内存(变量)?:
wordApp.Documents.Open
我不想打开 MS Word,我只想要里面的文字。
你给了我 DOCX 的答案,但是 DOC 呢?我想要免费和高性能的解决方案——不要打开 12.000 个 Word 实例来处理所有这些实例。 :( Aspose 是商业产品,900 美元对我来说太贵了。
【问题讨论】:
如何在不这样做的情况下将 MS Word 文档(.doc 和 .docx)加载到内存(变量)?:
wordApp.Documents.Open
我不想打开 MS Word,我只想要里面的文字。
你给了我 DOCX 的答案,但是 DOC 呢?我想要免费和高性能的解决方案——不要打开 12.000 个 Word 实例来处理所有这些实例。 :( Aspose 是商业产品,900 美元对我来说太贵了。
【问题讨论】:
您可以使用 Office 兼容包中的 wordconv.exe 将 doc 转换为 docx。
只需像这样调用命令: "C:\Program Files\Microsoft Office\Office12\wordconv.exe" -oice -nme InputFile OutputFile
我不确定您是否需要安装 word 才能运行,但它确实有效。我在本地使用它作为 Windows shell 命令,随时将旧的 office 文件转换为 2007 格式。
【讨论】:
对于 docx 格式的 Word 文档,我在 The CodeProject 上发现了这篇有趣的文章
Using DocxToText to Extract Text from DOCX Files
在文章中,作者讨论了只删除单词本身。
对于您的 doc(非 docx)Word 文档,而不是使用 Office API 和(在后台)生成 Word 实例,您可以尝试使用市场上许多不同的 Doc2Docx 转换器之一,然后应用以上两个过程。
【讨论】:
如果您正在处理 docx,则无需与 Word 进行任何互操作即可执行此操作 .docx 文件实际上是一个 ZIP 包含一个 XML 文件,您可以阅读 XML 请参考以下链接
http://conceptdev.blogspot.com/2007/03/open-docx-using-c-to-extract-text-for.html
【讨论】:
我最近对这个话题做了一些研究。事实证明,要能够在不打开 word 本身的情况下以编程方式操作 word 文件,您需要一些非常昂贵的工具。
code project on manipulating Word 上有一篇文章,您可能会发现它很有用。作者构建了一个 C# COM 包装器来处理对 Word 的调用。看起来它实际上弹出了应用程序这个词。
This post over at the neowin forums 看起来也很有希望。它包括很多用于文本提取目的的 PInvoked 调用。
如果你能找到一种方法来隐藏窗口,那是可以接受的。
【讨论】:
Aspose 有一个组件可以读取、修改和写入 Word 文档。 这是产品链接:Aspose.Words for .NET and Java
Aspose.Words 支持 .NET 和 Java 用于读取、修改和写入的应用程序 Word® 文档,无需使用 微软 Word®。 Aspose.Words 支持 广泛的功能,包括 文档创建、内容和 格式处理,强大的邮件 融合能力,全面支持 DOC、OOXML、RTF、WordprocessingML、 HTML、OpenDocument 和 PDF 格式。 Aspose.Words 确实是最 价格实惠、速度最快且功能丰富 市场上的单词组件。
【讨论】:
使用docxtemplater,您可以轻松获取单词的全文(仅适用于 docx)。
这是代码(Node.JS)
DocxTemplater=require('docxtemplater');
doc=new DocxTemplater().loadFromFile("input.docx");
result=doc.getFullText();
这只是三行代码,不依赖任何单词实例(都是纯JS)
【讨论】:
我并不是要成为对手,但为什么呢?
我使用 Word2X 或 AbiWord 从 Linux 服务器上的 Word 文档中提取数据,根据文档的数量和种类,提取时总会出现错误。项目符号、分页符、文档部分和其他“特殊”功能越多,情况就越糟糕。
我知道现在有一些选项可以自动化 OpenOffice 来处理文档,但我的建议是,如果可以的话,只使用 Word 来处理 Word 文档。
【讨论】: