在我的 xml 中创建新工作表时,POI 包含:
java.lang.RuntimeException: Could not find 'internal references' EXTERNALBOOK
at org.apache.poi.hssf.model.LinkTable.checkExternSheet(LinkTable.java:436) ~[system-monitor-server.jar:?]
at org.apache.poi.hssf.model.InternalWorkbook.checkSheets(InternalWorkbook.java:741) ~[system-monitor-server.jar:?]
at org.apache.poi.hssf.model.InternalWorkbook.setSheetName(InternalWorkbook.java:585) ~[system-monitor-server.jar:?]
at org.apache.poi.hssf.usermodel.HSSFWorkbook.createSheet(HSSFWorkbook.java:789) ~[system-monitor-server.jar:?]
at org.apache.poi.hssf.usermodel.HSSFWorkbook.createSheet(HSSFWorkbook.java:73) ~[system-monitor-server.jar:?]
代码:
Workbook workbook = WorkbookFactory.create(ClassLoader.getSystemResourceAsStream(RAW_REPORT_XLS));
Sheet myNewSheet = workbook.createSheet(WorkbookUtil.createSafeSheetName("TestSheet"));
Maven 依赖项:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.9</version>
</dependency>
有什么问题吗?
最佳答案
我使用 HSSF 克隆表(poi 版本 3.14)收到此错误消息 该模板是使用 LibreOffice 保存的 xls 文件。 当我打开模板并将其保存在 Excel 2010 中时,我得到了一个更大的文件,这解决了我的问题。
关于java - 创建工作表时 Apache POI 出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25133658/