问题标签 [apache-poi-4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 将 POI SXSSFWorkbook 流式传输到 servlet 输出流
我们正在构建一个 Spring Boot REST 端点,该端点生成一个大型 XLS 文件(可能包含约 1 百万行)并提供下载。当前解决方案使用 Apache POI 库的 SXSSF API 来创建工作簿;之后,我们将工作簿写入输出流,将流收集到一个字节数组中,然后提供这个以供下载。
当我们添加更多行时,如何流式传输工作簿的内容,这样我们就不会将整个文件保存在内存中?
当前解决方案的代码
还尝试直接在 response.getOutputStream() 中写入工作簿内容,但文件以某种方式损坏。
apache-poi - POI 4.1.1 setCellFormula 未显示最终值
以前我使用 POI 3.1.7 和 setCellFormula 没有任何问题。现在我已经迁移到 4.1.1 并注意到虽然单元格正确设置了公式,但它不显示任何值(例如,单元格设置为“会计”格式,单元格显示 =PRODUCT(I4*L4),在屏幕上它显示 $ - . 代码如下:
顺便说一句,我在 Excel 2013 上使用它(我认为这不会有任何影响?)。如果我要进入公式单元格并在公式末尾按 Enter,则该值只会按应有的方式显示。我错过了什么吗?
migration - CELL_TYPE_NUMERIC 的 Apache POI 4.1.2 迁移问题
我之前的项目中有 POI 3.17,由于黑鸭扫描结果显示漏洞,我不得不切换到 4.0 或更高版本。在我下载了 4.1.2 jar 之后(这是一个 ANT 项目)。我遇到了这样的构建问题:
编译500个源文件到C:\Users\k\project\ts\ts\build\WEB-INF\classes C:\Users\k\project\ts\ts\tool\src\com\vh\tool\services\ DNBBatchThread.java:197:错误:找不到符号 [javac]
如果 (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC)
^
java - 使用 Apache POI 在 Excel 工作簿之间复制单元格
我正在尝试使用最新版本的 Apache POI(4.1.2)将单元格从一个工作簿复制到另一个工作簿。
如果两个工作簿都是 .xlsx 文件,则一切正常。但是,如果源工作簿是(旧).xls 文件,而目标工作簿是 .xlsx 文件,则以下代码将失败
抛出的异常是:
java.lang.IllegalArgumentException:只能从一个 XSSFCellStyle 克隆到另一个,不能在 HSSFCellStyle 和 XSSFCellStyle 之间克隆
cloneStyleFrom
如果文件(或Workbook
对象)属于不同类型时我们不能使用,我们如何将HSSFCellStyle
对象转换为XSSFCellStyle
?
java - org.apache.poi.util.XMLHelper 缺少 newXMLReader() 方法
正如https://poi.apache.org/apidocs/4.1/中指定的那样,我没有在 newXMLReader() 方法 org.apache.poi.util.XMLHelper 中看到,只是想交叉检查我是否在这里遗漏了什么。
java - 使用 Tablesaw 读取 excel 导致 OutOfMemoryError
我正在使用以下 api 从 excel 中读取数据作为表格:https ://jtablesaw.github.io/tablesaw/gettingstarted
代码如下:
文件file_example_XLSX_10.xlsx的大小约为 120 mb,我收到 OutOfMemoryError。
有没有办法让我只读取文件中的特定列。