草庐IT

POI-HSSF

全部标签

java - 如何使用 Apache POI 加载大型 xlsx 文件?

我有一个大的.xlsx文件(141MB,包含293413行,每行62列)我需要在其中执行一些操作。我在加载此文件时遇到问题(OutOfMemoryError),因为POI在XSSF(xlsx)工作簿上占用了大量内存。ThisSOquestion类似,提出的解决方案是增加VM的分配/最大内存。它似乎适用于那种文件大小(9MB),但对我来说,即使分配了所有可用的系统内存,它也根本不起作用。(好吧,考虑到文件大15倍以上,这并不奇怪)我想知道是否有任何方法可以以一种不会消耗所有内存的方式加载工作簿,并且无需进行基于(进入)XSSF底层XML的处理。(换句话说,保持一个清教徒的POI解决方案)

java - 加载 XSSFWorkbook 类的 Apache POI 错误

我正在尝试编写一个适用于Excel文档的程序,但HSSF格式对于我的要求来说太小了。我正在尝试迁移到XSSF,但在尝试使用它时不断出现错误。我通过在我的程序中添加xmlbeans-2.3.0.jar和dom4j-1.6.jar设法解决了前两个问题,但是现在出现了这个错误,似乎没有通过添加Apachecommons来解决jar可在Apache网站上找到。错误如下:Exceptioninthread"main"java.lang.NoClassDefFoundError:org/apache/commons/collections4/ListValuedMapathot.memes.Exc

Java POI : How to read Excel cell value and not the formula computing it?

我正在使用ApachePOIAPI从Excel文件中获取值。除了包含公式的单元格外,一切都很好。事实上,cell.getStringCellValue()正在返回单元格中使用的公式,而不是单元格的值。我尝试使用evaluateFormulaCell()方法,但它不起作用,因为我使用的是GETPIVOTDATAExcel公式,并且此公式未在API中实现:Exceptioninthread"main"org.apache.poi.ss.formula.eval.NotImplementedException:ErrorevaluatingcellLandscape!K11atorg.apa

java - 无法从数字单元格中获取文本值 “Poi”

我正在尝试在Excel中使用电子表格中的数据,但总是出现此错误,已尝试将工作表格式化为文本和数字,但错误仍然存​​在。我看到有人使用它解决了cell.setCellType(Cell.CELL_TYPE_STRING);但我不知道我的代码中的这段话的位置。WebElementsearchbox=driver.findElement(By.name("j_username"));WebElementsearchbox2=driver.findElement(By.name("j_password"));try{FileInputStreamfile=newFileInputStream(

java - 使用 Apache POI 合并 Excel 中的单元格

还有其他方法可以使用ApachePOI库合并Excel中的单元格吗?我正在尝试使用以下方法,但它不起作用//selectingtheregioninWorksheetformergingdataCellRangeAddressregion=CellRangeAddress.valueOf("A"+rowNo+":D"+rowNo);//mergingtheregionsheet1.addMergedRegion(region); 最佳答案 你可以使用sheet.addMergedRegion(rowFrom,rowTo,colFro

java解析excel,poi和easyExcel

做项目遇到上传excel并解析excel内容组装成结构话json,网上查了很多方法,做了poi和easyExcel两个方法的对比两者都可以解析excel文件,但是两个也有不同:一、poi官方说明:https://poi.apache.org/components/index.htmlA、03版excel和07版excel:1)03版excel最多65536行,最大列数是256列,07版excel没有限制;2)文件后缀不同,一个xls,另一个是xlsx。3)poi引入依赖不同B、写(1)03版excel和07版excel生成的性能对比程序执行前时间戳作为begin,程序执行后时间戳作为end,然

java - Apache POI Excel - 如何配置要扩展的列?

我正在使用ApachePOIAPI生成excel电子表格以输出一些数据。我面临的问题是在创建和打开电子表格时,列未展开,因此某些长文本(例如日期格式的文本)乍一看并没有显示出来。我可以在excel中双击列边框以展开或拖动边框以调整列宽,但可能有20多列,而且我无法在每次打开电子表格时手动执行此操作:(我发现(虽然可能是错误的方法)groupRow()和setColumnGroupCollapsed()可能能够做到这一点,但没有运气。也许我用错了。示例代码片段Workbookwb=newHSSFWorkbook();CreationHelpercreateHelper=wb.getCre

java - 使用Apache POI在Excel中使用千位分隔符格式化数字

我想格式化一些数字单元格,用逗号作为千位分隔符。例如:12->121200->1,20012000->12,00012000000->12,000,000120000000->120,000,000我有以下代码。我应该使用什么作为formatStr?有没有简单的方法?或者我是否必须检测零的数量才能产生类似#,###,###的内容?StringformatStr="";HSSFCellStylestyle=workbook.createCellStyle();HSSFDataFormatformat=workbook.createDataFormat();style.setDataFor

java - 无法在 Apache POI 中导入 XSSF

我引用的是3.7版的ApachePOI,但当我这样做时出现“无法解决”错误:importorg.apache.poi.xssf.usermodel.XSSFWorkbook;引用POI的其他导入语句请勿给我错误,例如:importorg.apache.poi.ss.usermodel.*;有什么想法吗?? 最佳答案 要使OOXML工作,您需要与POIjar分开打包的POI-OOXMLjar。从以下位置下载POI-OOXMLjar-http://repo1.maven.org/maven2/org/apache/poi/poi-oox

java - 无法在 Apache POI 中导入 XSSF

我引用的是3.7版的ApachePOI,但当我这样做时出现“无法解决”错误:importorg.apache.poi.xssf.usermodel.XSSFWorkbook;引用POI的其他导入语句请勿给我错误,例如:importorg.apache.poi.ss.usermodel.*;有什么想法吗?? 最佳答案 要使OOXML工作,您需要与POIjar分开打包的POI-OOXMLjar。从以下位置下载POI-OOXMLjar-http://repo1.maven.org/maven2/org/apache/poi/poi-oox