org.apache.poi.POIXMLException: Strict OOXML isn't currently supported, please see bug #57699
at org.apache.poi.POIXMLDocumentPart.getPartFromOPCPackage(POIXMLDocumentPart.java:668)
at org.apache.poi.POIXMLDocumentPart.<init>(POIXMLDocumentPart.java:128)
at org.apache.poi.POIXMLDocumentPart.<init>(POIXMLDocumentPart.java:118)
at org.apache.poi.POIXMLDocument.<init>(POIXMLDocument.java:61)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:295)
at com.example.ReadExcel.main(ReadExcel.java:27)
错误原因:在高版本 excel 中,另存为文件有一个另存为 Strict Open XML 格式,虽然后缀也为 .xlsx,但 POI的最新版本无法解析。
解决方法:
经过查找资料,在github上存在一个临时解决方案,亲测可用:
https://github.com/pjfanning/ooxml-strict-converter
引入如下两个文件,配置对路径就好。