如何阅读 Open Office 电子表格?

Posted

技术标签:

【中文标题】如何阅读 Open Office 电子表格?【英文标题】:How to read an Open Office spreadsheet? 【发布时间】:2008-10-22 20:51:34 【问题描述】:

如何从 Groovy 读取 Open Office 3.0 电子表格 (.ods)?我想从命名工作表中选择特定列。理想情况下,添加“where”子句或其他条件子句会很有用。

【问题讨论】:

【参考方案1】:

我从未使用过它,但Open Office has a Java API,当然您也可以从 Groovy 中使用它。看起来最好的开始阅读位置是Developer's Guide、Java UNO Reference,以及Java 和(嘿!)Groovy 中的示例。希望对您有所帮助!

【讨论】:

【参考方案2】:

可能在Spring Factories 或Groovy and JMX 这里有一些东西。有Groovy and Open Office的论坛。

【讨论】:

【参考方案3】:

您能否将表格/电子表格导出为 SQL 条目,然后使用它。你也可以看看这个插件的 goovy -- http://www.ifcx.org/

【讨论】:

【参考方案4】:

OpenOffice 文档是 ZIP 文件,其中包含 XML 格式的文档数据以及一些其他文件(word 文档的样式表)。 Details can be found here.

计算的主要问题是公式。如果您只有表格数据,那么您可以简单地读取单元格值并使用它。因此,您可以打开 ZIP 存档,读取其中的 content.xml 并使用任何 XML 解析器对其进行解析。

但是当单元格包含公式时,您需要执行它。在这种情况下,您必须通过 UNO API 打开文档。 Here is the Java version。有一个链接,您可以在其中下载示例代码,说明如何打开 ODF 文档以及如何检查其内容。 There are also snippets 但没有一个显示如何检查工作表。

UNO 的主要缺点是文档。每种方法都在某处进行了解释,但您必须首先找到解决问题的方法。

【讨论】:

【参考方案5】:

由于标题没有提到 Groovy(只有问题细节有),我不想提出这个新问题。

一般如何阅读 Open Office 电子表格文档?有一些工具可以创建一个(ooo-python),但不是用于阅读一个。它们是 XML,但只是直截了当地深入研究并试图获得提取我想要的数据的正确逻辑似乎并不理想。

我想要的是类似于 Excel COM 支持的功能,但来自命令行工具(或脚本语言)。

【讨论】:

-1 不要在答案部分发布更多问题。如果您的具体详细信息未得到解答并可能链接到此问题,请打开一个新问题(“喜欢这个问题,但我需要知道...”)

以上是关于如何阅读 Open Office 电子表格?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 c# 在 Open Office Calc 表中插入超过 256 列?

Openoffice中的电子表格,如何把最上面的一行锁定在顶端不动

自动从 Open Office Calc 发送电子邮件

如何通过 C#.net 将表格导出到打开的 office 电子表格(.ods 文件)中?

如何在 Open Office VBA 中重新分配命名范围的地址?

Libre Office 电子表格 - 如何在列中的多个重复值中仅保留一个值?