4

您好我正在寻找在 Groovy 中解析电子表格(xls/ods)。我一直在为 Ruby 使用 Roo 库,并希望在 Groovy 中尝试相同的任务,因为 Java 已经安装在我使用的开发服务器上,我希望将服务器上的技术数量保持在一个简单的核心少数.

我知道 ods 格式是压缩的 XML,因此可以这样解析,但我想使用电子表格概念而不是 XML 概念来处理文件。

处理 xls 文件的能力并不重要,但可以让我不必将多个 xls 文件保存到 ods(因为这是为了解析来自客户端的数据)。

谢谢

4

8 回答 8

8

我建议使用Apache POI访问 .xls 文件。

我从未使用过 .ods 格式,因此没有关于该格式的信息。

于 2009-01-28T20:29:41.137 回答
3

还有JExcelAPI,它有一个漂亮、干净、简单的界面(大部分)。

虽然不能帮助您处理 ODS 文件。

于 2009-01-28T20:39:30.757 回答
2

看看“odftoolkit”怎么样?http://odftoolkit.openoffice.org/

于 2009-02-04T12:41:01.370 回答
2

Groovy in Action有一章名为“Windows 上的 Groovy”,讨论了使用Scriptom、Groovy/COM 桥(在幕后使用JACOB)来访问包括 Excel 在内的多个 Windows 应用程序。

正如 Amit 所指出的,对于 OpenOffice,您可以使用ODF Toolkit 。

于 2009-02-23T04:02:01.680 回答
1

支持 jdmichalApache POI的投票。我已选择它作为我们选择处理 Excel 文件输入 (.XLS) 的库。如果您决定要支持该项目,该项目也正在研究 .XLSX 文件格式。根据您的规范,我认为您不想将内容转换为 CSV,而且您似乎已经建立了输入和输出路径。对于没有乐于处理 CSV 到 Excel 转换的任何人来说,它可能会有点冒险。我花了几个小时处理 Excel 将字符串数据转换为数字数据所产生的问题。您可以在POI 案例研究页面上查看有关此效果的其他证词. 除了这些问题,我根本不想亲自处理这些输入。我宁愿投入编程工作并简化未来的工作流程。

我也没有处理过 ODF,也没有计划在我当前的项目中支持它。您可能想查看OpenOffice.org ODF Toolkit Project

祝你好运,玩得开心,-D。

于 2009-01-28T22:01:20.093 回答
1

我建议您看一下SimpleXlsBuilder 和 SimpleXlsSlurper,它们都基于 apache POI,并且可以以简洁的方式满足您读取和写入 Excel 97 电子表格的基本需求。

于 2009-08-13T00:09:40.763 回答
0

如果您的电子表格足够简单 - 没有图表和其他嵌入内容 - 您应该简单地将电子表格转换为CSV

优点:

  • xls 和 ods 都将生成相同的 CSV - 您只需处理一种输入类型。
  • 您不必弄乱(开放)Office 的新版本。
  • 处理纯文本总是比其他晦涩的格式更有趣。

缺点:

  • 我能想到的一个 - 找到一个从 xls 和 odf 到 csv 的可靠转换器。不应该太难 - OpenOffice 有一个内置的。
于 2009-01-28T20:57:37.740 回答
0

几件事:

1) 我同意使用 CSV 格式可以简化一些开发工作。OpenCSV可以帮助处理 CSV 文件。还有其他很好的 Java CSV 解析器。请记住,由于 Groovy 与 Java 的无与伦比的集成,Groovy 可以使用任何可用于 Java 的东西。

2) 我知道您说过您想避免处理 XML,但是Groovy 使 XML 处理变得非常简单。

于 2009-01-28T21:25:46.983 回答