用于读取文档的 C++ 库,在“Open Office Calc”中创建

Posted

技术标签:

【中文标题】用于读取文档的 C++ 库,在“Open Office Calc”中创建【英文标题】:C++ library to read a document, created within "Open Office Calc" 【发布时间】:2011-11-21 15:11:49 【问题描述】:

我在“Open Office Calc”中创建了一个文件,我需要将它加载到我的 C++ 程序中,以生成一些特定于游戏的代码,并为此设计文件编写代码。我只需要电子表格名称、字段数据和公式结果。

有办法吗?

谢谢。

【问题讨论】:

所有 OpenOffice 文件都是 zip 存档,其内容在公开指定的 XML 文件中。可能需要一些工作,但在大多数可用的 XML 解析器的帮助下获得所需的数据并非不可能。 起初我认为这样的解决方案过于复杂,但在使用运行 calc 可执行文件的 OpenOfficeSDK 数小时后,创建了一些 pdbregistry 文件(以及从 hxx 生成的奇怪的 hpp 源),使用套接字连接并且在目标 PC 上安装的 OpenOffice 版本必须与 SDK 版本相同程序被编译。您可以发布与答案相同的内容,以便我接受吗?谢谢。 我使用 minizip 解压缩 ods 文件并使用 pugixml 读取 xml 数据(Office 也将公式结果写入输出 XML)。代码只有 400 行。不要认为与某人分享甚至不值得。 【参考方案1】:

所有 OpenOffice 文件都是 zip 存档,其内容在公开指定的 XML 文件中。可能需要一些工作,但在大多数可用的 XML 解析器的帮助下获得所需的数据并非不可能。

【讨论】:

以上是关于用于读取文档的 C++ 库,在“Open Office Calc”中创建的主要内容,如果未能解决你的问题,请参考以下文章

在 C++ 中读取 json 文件

C++ 高级教程:C++ 文件和流

iOS 如何生成EXCEL文档和读取EXCEL文档

C++文件读取中,怎样从文件中读取一种类型的数据

C++学习笔记:高级编程:文件和流,异常处理,动态内存,命名空间

C++怎么把文件按照16进制进行读写?