每当我的交叉表报告的结果超过 702 列(ZZ 列)时,从 Excel 收到“不可读内容”错误。当少于此列数时 - 没有错误。有限制吗? XLSX 应处理 16,000 多个列。
我们使用的是 JasperReports v4.0.1 和 POI 3.6。我尝试使用 JasperReports v4.7 和 POI 3.7 重现了同样的问题。
感谢任何帮助或见解。
导出代码:
JRXlsxExporter xlsExporter = new JRXlsxExporter();
File fileP = new File(_workdir + report_name + ".jrprint");
JasperPrint jasperPrint = (JasperPrint)
JRLoader.loadObject(fileP);
xlsExporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE);
xlsExporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
xlsExporter.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE);
xlsExporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
xlsExporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE);
xlsExporter.setParameter(JRXlsExporterParameter.IS_COLLAPSE_ROW_SPAN, Boolean.TRUE);
xlsExporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
xlsExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, _outputName);
System.out.println("Exporting Excel Report to " + _outputName);
xlsExporter.exportReport();
System.out.println("Export Complete.");
最佳答案
尝试使用它,
JRXlsxExporter jrXlsxExporter=new JRXlsxExporter();
jrXlsxExporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
jrXlsxExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "export.xlsx");
jrXlsxExporter.exportReport();
关于java - JasperReports xlsx 导出错误 - 不可读的内容 - 为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15024396/