我很好奇如何使用我的编译器打开 OpenOffice 文档。我知道我可能可以将其转换为文本文件或 rtf,但我想知道是否可以直接从 .odt 读取。我想要做的只是像 .txt 文件那样逐行读取。任何想法都会很好,如果有帮助,我正在使用 DevC。
问问题
2190 次
2 回答
4
根据 Wikipedia,.odt文件只是一个标准的 ZIP 存档,包含以下内容:
- XML 文件:
- 内容.xml
- 元.xml
- 设置.xml
- 样式.xml
- 其他文件:
- 模仿类型
- 目录
- 元信息/:
- 清单.xml
- 缩略图/:
- 缩略图.png
Content.xml 将包含文件的内容(有关其他文件的信息,请参阅上面的Wikipedia 链接)。您可以使用任何 XML 库来解析该 XML 文件(和其他文件)以读取数据。您的程序需要做的就是解压缩.odt文件,然后将要解析的任何 XML 文件传递给 XML 库。
这个 StackOverflow 答案中提到了您可以使用的 XML 库示例。
对于解压缩.odt文件,您有一些不错的选择:
- 这个 StackOverflow answer建议的 libzip 。
- 7zip
于 2013-03-29T06:35:13.330 回答
2
它必须是C/C++吗?Linux Journal 写了一篇关于用 Python 解析 ODT 文件的文章。
http://www.linuxjournal.com/article/9347
这个想法将是相同的,只是不同的库来完成繁重的工作。
于 2013-03-29T01:44:49.583 回答