首页 文章

有没有办法编写一个适用于所有可能的办公文档的代码?

提问于
浏览
0

我正在编写一个修改word文档的程序 . 目前我已经使用Microsoft.Office,Interop.Word来处理Word文档,它要求在用户计算机上安装Microsoft Office,但是我的一些客户没有MS Office,但他们有Open Office . 那么,我应该使用哪个库而不是Interop?

以及如何使我的代码能够使用不同的word文件,不仅是.doc和.docx,还有其他办公程序文件?目前我正在为每种类型的文档编写不同的代码 .

我的程序将文档从原始语言翻译成另一种语言,因此对我来说保持原始格式的文档格式非常重要,这就是我使用Interop的原因..但我也希望我的程序对很多人都有用尽可能

3 回答

  • 1

    我想你没有提到但是,你假设所有客户都使用相同版本的Office . 要解决Office版本的问题,您可能需要查看此开源项目:NetOffice http://netoffice.codeplex.com/并使用该库执行所有.doc和.docx文件格式开发 .

    对于OpenOffice或LibreOffice,我相信您可以做的最好的事情是进入项目网站并下载SDK . 例如,请转到此处:http://api.libreoffice.org/examples/examples.html,您将在Java,Python,C中找到一些示例来编辑包含odt文件的文本文档 .

    LibreOffice SDK下载地址:http://www.libreoffice.org/download/

    最后,还有OpenXML格式(在另一个答案中提到):ECMA Office Open XML(“Open XML”)是一个国际性的开放标准,用于文字处理文档,演示文稿和电子表格,可以通过以下方式自由实现:多个平台上的多个应用程序

    你也可以在这里下载它的SDK:http://msdn.microsoft.com/en-us/office/bb265236.aspx

    希望有所帮助 .

  • 0

    您最终可能会编写单独的代码来处理每种文件类型 . 在Office产品中可能存在一些相似之处,但在大多数情况下,每种类型都需要adapter .

    但是,您可以(并且应该)通过将转换逻辑和其他非类型特定函数放在每个适配器随后引用的共享库中来最小化重复代码的数量 .

  • 3

    我们正在使用aspose words . 这支持DOC,DOCX,RTF和OOXML . 但它不是免费的 .

相关问题