我正在寻找一种以docx格式编程转换为doc格式的文档而不使用ole自动化的方法。我已经有一个Windows服务,但它意味着在服务器上安装办公室,它有点不可靠,不受支持。我知道aspose.words产品,我会尝试一下,但是有没有人建议如何尽可能简单,可靠,便宜地做到这一点?
答案 0 :(得分:13)
不使用OLE自动化的一个选项是将转换器dll与兼容包一起包装,以便在不自动化Office的情况下从docx转换为doc。
这仅要求在计算机上安装兼容包Office。
Office转换器dll使用ForeignToRtf / RtfToForeign接口将它们支持的文档格式转换为RTF和/或从RTF转换为其文档格式。您可以根据需要将转换器从一种格式转换为另一种格式,例如:做转换DOCX - > RTF - > DOC。
您可以获取SDK from Microsoft,其中包含有关如何使用现有转换器的若干示例。如果我没记错的话,已经包含了一个命令行包装器示例。一切都是C / C ++的东西。
通过查看以下注册表项,您可以找出哪些转换器dll负责OpenXML转换:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Text Converters\Import\Word12
如果您需要更多详细信息,请与我们联系。
答案 1 :(得分:0)
您可以使用docx4j(或者确实只是poi)来阅读docx,poi将其写成.doc