有谁知道如何在excel中更改单元格特定文本的颜色。我正在使用apachepoi,我可以找到更改整个单元格的文本颜色的方法。但我只想要一个特定的文本。例如:单元格A1有HelloWorld我希望“Hello”为蓝色,“World”为绿色。我该怎么做? 最佳答案 关键是使用HSSFRichTextString对象来设置单元格的值。这个对象有一个applyFont接受startingIndex、endingIndex和Font的方法。因此,您可以创建具有所需颜色的字体,然后使用applyFont()将它们应用于部分单元格值。这是我拼凑的
我在为来自ApachePOI的XSSFWorkbook设置自定义字体颜色时遇到了一些麻烦。当我这样做时:yellow=workbook.createCellStyle();FontwhiteFont=workbook.createFont();whiteFont.setColor(newXSSFColor(newColor(255,255,255)).getIndexed());yellow.setFillForegroundColor(newXSSFColor(yellowRGB));yellow.setFillPattern(XSSFCellStyle.SOLID_FOREGROU
有没有办法确定单元格是否为日期?我知道style.getDataFormatString()但这对我没有帮助,因为我无法确定格式是否适用于日期。 最佳答案 如果您使用的是XSSF用户模型,那么您需要DateUtil.isCellDateFormatted(Cell)-这将返回一个boolean值,告诉您单元格的格式字符串是否表示数据。如果您不了解低级XML内容,则需要DateUtil.isADateFormat(int,String)反而。样式ID来自单元格xml。您必须从样式表中获取的样式字符串,这是一个不同的包部分。虽然有一些帮
我正在使用apachepoi3.8创建一个excel文件。此Excel文件需要包含一些日期。我正在尝试将日期写入excel文件,格式为excel类型“日期”。但我总是得到一种“自定义”类型。我需要使用“日期”类型,因此它将根据用户设置进行本地化。我尝试了以下方法:ApachepoidateformatApachePOIlocalizedDateintoExcelcell但它不起作用。这是我的代码:XSSFWorkbookwb=newXSSFWorkbook();XSSFSheetsheet=wb.createSheet("newsheet");XSSFDataFormatdf=wb.c
数据导出1.工作台1.1需求分析和设计1.1.1产品原型1.1.2接口设计1.2.1Controller层1.2.2Service层接口1.2.3Service层实现类1.2.4Mapper层1.3功能测试2.ApachePOI2.1介绍2.2入门案例2.2.1将数据写入Excel文件2.2.2读取Excel文件中的数据3.导出运营数据Excel报表3.1需求分析和设计3.1.1产品原型3.1.2接口设计3.2代码开发3.2.1实现步骤3.2.2Controller层3.2.3Service层接口3.2.4Service层实现类3.3功能测试1.工作台1.1需求分析和设计1.1.1产品原型工作
我想使用apachipoi从某个xlsx文件中读取数据(单元格值)。下面的代码成功创建了SXSSFWorkBook实例并分配了db.xlsx(我的虚拟xlsx)。我已尝试更改工作表编号并使用getSheetNumber方法对其进行双重检查,以确保工作簿已正确分配。接下来,我想将特定工作表(索引0,名称为main)分配给SXSSFSheet实例,但目前它返回空。(我都尝试过getSheetAt和getSheet方法)。SXSSFRowDummyRow;SXSSFCellDummyCell;intRowCount;OPCPackagepkg=OPCPackage.open(blablast
我已经编写了用于编写xlsm(Excel2007)的java文件。使用ApachePOI库,写xlsx文件成功。并且写入xlsm文件是成功的。但我无法打开xlsm文件,因为打开xlsm文件时出错。使用ApachePOILibrary编写xlsm文件是否可行?如果编写xlsm可行,请提供指南如何使用Apachepoi库编写xlsm文件。XSSFWorkbookworkBook=newXSSFWorkbook();XSSFSheetsheet=workBook.createSheet("Related_SRC");StringrealName="Test.xlsm";Filefile=ne
这个问题在这里已经有了答案:ApachePOIautoSizeColumnResizesIncorrectly(10个答案)关闭9年前。我正在创建一个使用apachepoi将信息写入excel文件的程序。在我将所有数据输入文件后,我在文件的每一列上调用autoSizeColumn方法。但它将列的大小调整为最后输入的单元格的宽度,有时不如列中的其他单元格大。我知道我正在正确使用它,不幸的是我现在没有互联网来发布任何代码,但我会尽可能更新。好的,我希望我使用的是正确的代码标签,但它是:publicvoidwriteFile(){Workbookwb=newHSSFWorkbook();Sh
我在读取.xlsx文件时遇到问题。每当我使用WorkbookFactory.create(inputStream);时,都会在/tmp/poifiles目录下创建一些随机名称的临时文件。此目录是为第一个用户创建的,具有RW-R-R-权限。所以当同一台机器上的另一个用户试图访问这些文件时,他不能。请给我任何建议1)如何在/tmp目录下而不是总是在/tmp/poifiles下创建这些临时文件(我使用的是RHELV5.0)2)以及如何配置POI,例如更改它读取临时文件的位置?迫切需要任何帮助来解决我的不同用户通过POI访问相同的.xlsx文件的问题。 最佳答案
我正在尝试从电子表格中读取日期列和时间列。我可以从工作表中删除日期列,但不能删除时间列。例如,我的工作表将包含以下形式的行:日期时间11/2/201212:15:01我有以下代码来获取日期列:while(cellIterator.hasNext()){HSSFCellcell=(HSSFCell)cellIterator.next();switch(cell.getCellType()){caseHSSFCell.CELL_TYPE_NUMERIC:HSSFCellStylestyle=cell.getCellStyle();if(HSSFDateUtil.isCellDateForm