jjzjj

java - Apache POI SXSSF 和 XSSF

我有一个问题。我是对的,如果我有一个通过xssf构造函数创建的工作簿,那么将构造函数更改为sxssf工作簿就足够了(使用xssfwb作为参数传递)以使其在流模式下工作?非常感谢您的回答。解决方案:这完全取决于您用于流式传输的类。如果您的类(class)收集的流缓冲区多于它可以容纳的数量,那么这个东西将无法工作。否则会 最佳答案 是的,你是对的。这两种实现方式的区别在于,stream版本直接将数据写入stream并在内存中存储最多指定行数(默认值为100,存储在SXSSFWorkbook.DEFAULT_WINDOW_SIZE中)。因

java - 如何使用 POI SXSSF 阅读大型电子表格

我正在尝试使用SXSSF读取xls文件。我读过SXSSF,但不明白如何使用它。所以我遇到了一些问题。任何人都可以帮助我读取大型xls文件(大约100,000行和7-8页)的java代码。(根据评论编辑)这是我尝试过的:WorkbookworkBook=newSXSSFWorkbook(200);workBook=WorkbookFactory.create(inputStream);Sheetsheet=workBook.getSheetAt(0);inttotalRows=sheet.getPhysicalNumberOfRows();for(inti=0;i

java - 将自定义颜色与 SXSSF (Apache POI) 结合使用

我正在尝试编写一个巨大的excel文件,我的要求允许我写下行然后忘记,所以我正在使用SXSSF这只允许在内存中保留少数行,其余的都写入文档。这有助于克服大文件的内存不足异常。但我还需要使用sxssf工作簿为单元格设置样式。我找不到在SXSSF中定义和使用自定义颜色的方法(就像在XSSF中,我们可以直接定义自定义颜色,而在HSSF中,我们可以用自定义颜色替换调色板中的条目)我找不到从SXSSFworkbook访问调色板的方法.我无法创建新的HSSFpalette因为构造函数是protected。目前唯一可行的方法是以某种方式从所有预定义颜色的列表中找到相似的颜色并使用它,而不是原来的颜色

java - SXSSF:在输出到文件之前,它会将不在窗口中的行刷新到哪里?

根据SXSSF(StreamingUsermodelAPI)documentation:SXSSF(package:org.apache.poi.xssf.streaming)isanAPI-compatiblestreamingextensionofXSSFtobeusedwhenverylargespreadsheetshavetobeproduced,andheapspaceislimited.SXSSFachievesitslowmemoryfootprintbylimitingaccesstotherowsthatarewithinaslidingwindow,whileXS

java - 用于阅读的 Apache POI Streaming (SXSSF)

我需要读取大型excel文件并将其数据导入我的应用程序。由于POI占用大量堆工作,经常抛出OutOfMemory错误,我发现有一个StreamingAPI用于串行处理excel数据时尚(而不是将文件完全加载到内存中)我创建了一个包含单个工作表的xlsx工作簿,并在单元格中输入了多个值,并得出以下代码来尝试读取它:publicstaticvoidmain(String[]args)throwsThrowable{//keep100rowsinmemory,exceedingrowswillbeflushedtodiskSXSSFWorkbookwb=newSXSSFWorkbook(ne