我需要从 xlsx 文件中解析数据。目前我正在使用 Jakarta-POI (v. 3.11) 来做到这一点。它可以很好地处理一些 xlsx 但不是全部。我注意到未正确解析的文件是使用 Office 2013 保存的“严格 xlsx”文件。更确切地说,此文件符合 ISO29500 而不是 ECMA-376,不同之处在于 ISO29500 文件中存在与类型的关系:
http://purl.oclc.org/ooxml/officeDocument/relationships/officeDocument
Jakarta-POI 正在寻找:
String CORE_DOCUMENT = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument"
有没有办法让 Jakarta-POI 读取这些文件?
最佳答案
OOXML Strict Converter for Office 2010如果您需要使用旧格式重新保存文档,可能会有所帮助。
一些 purl 命名空间列在 http://pyxb.sourceforge.net/PyXB-1.2.2/bundles.html 上(上面 Jethro 的链接似乎不再有效)。
可以在以下位置找到最新的 XML 模式文件: http://www.ecma-international.org/publications/standards/Ecma-376.htm
关于apache-poi - 如何在 Java 中解析严格的 *.xlsx 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29023542/