是否有支持Microsoft Office和Open Office的Java库?

由于Apache POI支持Microsoft Office并且JExcelApi支持Open Office,是否有支持Microsoft Office和Open Office的Java库?

注意:在pom.xml文件中,我们使用POI和JExcel实用程序,以便分别从Microsoft Office和Open Office中的Excel工作表中获取/读取数据。

所以我的问题是:有没有支持两者的图书馆?

Aspose涵盖了所有的微软格式,但它不是免费的,也不是开源的。

关于开源Java API,您可以在这里找到每个可用Java库的评论,

http://www.esupu.com/open-source-office-document-java-api-review/

Apache UNO Java库根据我的知识支持所有,它是免费和开源的,但它需要一个Open Office安装来处理,它的文档很重,而且不是很清楚

docx4j是一个用于创建和操作Microsoft Open XML(Word docx,Powerpoint pptx和Excel xlsx)文件的Java库。

Docx4j

可能没有可以支持这两种格式的库。 如果您不想为每种格式使用库(并编写所需的代码),可以尝试一种解决方法。

使用转换器将.xls转换为.odt (或其他方式),然后使用您喜欢的库来处理这种格式。

我通过快速谷歌搜索找到的可用转换器,我相信你会找到更多:

  • JODConverter – 不再维持一年半,但可以工作
  • 使用OpenOffice进行程序化文档转换 – 这篇文章介绍了如何使用无头OO转换MS Office文档

考虑将两种格式转换为更友好的格式,如CSV (更多CSV )或XML。