草庐IT

java - Apache POI,同时使用 XSSF 和 HSSF

我对ApachePOI项目有疑问。我未能在"SameJavaClass"中使用XSSF和HSSF。我应该下载哪个jar或者我应该将哪个工件添加到maven中?我想同时处理xls和xlsx文件。当我遇到excel版本错误时,我会将XSSF更改为HSSF或将HSSF更改为XSSF。我该怎么做? 最佳答案 与其这样做,不如尝试使用ApachePOI3.7的新版本,它有SS包,可以处理HSSF和XSSF而不必担心类型详情在这里:http://poi.apache.org/spreadsheet/index.html

java - 如何使用POI解析Excel文件中的UTF-8字符

我一直在使用POI成功解析XLS和XLSX文件。但是,我无法从Excel电子表格中正确提取特殊字符,例如中文或日文等UTF-8编码字符。我已经想出如何从UTF-8编码的csv或制表符分隔文件中提取数据,但Excel文件没有成功。谁能帮忙?(编辑:来自评论的代码片段)HSSFSheetsheet=workbook.getSheet(worksheet);HSSFEvaluationWorkbookewb=HSSFEvaluationWorkbook.create(workbook);while(rowCtr 最佳答案 我在从Excel

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

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

java - 在 Java Apache POI 中更新现有的 Excel 文件

我正在尝试编写一个每天运行的Java程序(使用任务计划程序),并在每次运行时将一列附加到Excel电子表格。我遇到的问题是它只是重写文件,而不是附加到文件。我正在使用ApachePOI,这里是相关代码:publicstaticvoidtoExcel(Listresults,ListnotActive)throwsIOException{try{FileInputStreamfIPS=newFileInputStream("test.xls");//ReadthespreadsheetthatneedstobeupdatedHSSFWorkbookwb;HSSFSheetworkshee

java - Apache POI - 在 Excel 中设置左/右打印边距

是否有可能-使用apachePOI-为Excel工作表设置左边或右边的打印边距?默认边距相当大。我在XSSFPrintSetup中既看不到setLeftMargin也看不到setRightMargin,只有页眉和页脚:XSSFPrintSetupprintSetup=(XSSFPrintSetup)sheet.getPrintSetup();printSetup.setHeaderMargin(0.5D);printSetup.setFooterMargin(0.5D);有哪位好心的friend可以帮帮我吗? 最佳答案 页边距不包含

java - 通过 Apache POI 读取大型 Excel 文件 (xlsx) 时出错

我正在尝试通过ApachePOI读取大型excel文件xlsx,比如40-50MB。我正在摆脱内存异常。当前堆内存为3GB。我可以毫无问题地读取较小的excel文件。我需要一种方法来读取大型excel文件,然后通过SpringexcelView将它们作为响应返回。publicclassFetchExcelextendsAbstractView{@OverrideprotectedvoidrenderMergedOutputModel(Mapmodel,HttpServletRequestrequest,HttpServletResponseresponse)throwsExceptio

java - 如何在 Apache POI 中格式化 XWPFTable 中的文本

我使用ApachePOI在word中创建了一个XWPFTable。现在表格可以正确显示,列中有文本。现在我想格式化表格中的文本以及大小、字体等。我该怎么做?我看到的是每个技巧都与运行选项相关联。但我想要的是在TableRow中。看看我到目前为止做了什么:XWPFTabletableTwo=document.createTable();XWPFTableRowtableTwoRowOne=tableTwo.getRow(0);tableTwo.getCTTbl().getTblPr().unsetTblBorders();tableTwoRowOne.getCell(0).setText

java - Apache POI - Excel 写入 - 锁定单个单元格

我正在使用ApachePOI生成ExccelTemplete,我的客户可以下载、添加值并上传回来。我想将单元格值设置为不可编辑,以便无法编辑模板标题。我试过这段代码,但它不起作用,cell.getCellStyle().setLocked(true)我还读到锁定Excel工作表然后允许列设置锁定(false)会起作用,但我不确定客户端将填充多少列,所以我希望所有其他列都被编辑,除了一个我用ApachePOI动态填充了它。我希望我的查询清楚易懂。 最佳答案 试试下面的代码,它可能会解决你的问题:HSSFWorkbookworkbook

java - XSSF (POI) - 将 "formula"列添加到数据透视表

我正在使用POI3.12-beta1:org.apache.poipoi3.12-beta1org.apache.poipoi-ooxml3.12-beta1org.apache.poiooxml-schemas1.1我正在尝试创建一个计算数据透视表列,其定义为:='Ended'/'Generated'*100。我继续在Excel中手动编辑工作表以使其正常工作,当我将*.xlsx文件反转到ZIP目录并查看它时,我在\xl\pivotCache\pivotCacheDefinition1.xml:所以我回到我的java程序并添加了以下代码以自动生成它,但它没有注册数据列“15”并且我收到

java - 空指针异常apache poi

嗨,我们一直在使用apachepoi读取我们的java程序的xls和xlsx文件,问题是我们得到空指针异常有两个原因。第一个是我们已经解决的空白单元格,另一个是是当我们选择某个没有任何记录的列时..我们的程序要求excel文件的路径,然后是文件的具体工作表编号和你要阅读的工作表的具体列号..这是读取xls文件的代码publicvoidreadXLSFile()throwsIOException{InputStreamExcelFileToRead=newFileInputStream(path);HSSFWorkbookwb=newHSSFWorkbook(ExcelFileToRea