我对 poi 和 XSSF 有一个大的单元格样式问题。
编辑 2015-01-06:
绿色单元格具有设计颜色,蓝色单元格具有标准颜色。标准颜色效果很好,但设计颜色仅适用于 HSSF。如何获得单元格的设计颜色?
谢谢帮助
编辑 2015-01-07:这是一个获取颜色的简单示例
HSSF
hssfSheet.getRow(0).getCell(1).getCellStyle().getFillForegroundColor() == 40
hssfSheet.getRow(1).getCell(1).getCellStyle().getFillForegroundColor() == 42
hssfSheet.getRow(2).getCell(1).getCellStyle().getFillForegroundColor() == 64
XSSF
xssfSheet.getRow(0).getCell(1).getCellStyle().getFillForegroundColor() == 0
xssfSheet.getRow(1).getCell(1).getCellStyle().getFillForegroundColor() == 64
xssfSheet.getRow(2).getCell(1).getCellStyle().getFillForegroundColor() == 64
我相信 0 表示它有颜色,而 64 表示没有颜色。
xssfSheet.getRow(0).getCell(1).getCellStyle().getFillForegroundXSSFColor() instanceof XSSFColor
xssfSheet.getRow(1).getCell(1).getCellStyle().getFillForegroundXSSFColor() == null
xssfSheet.getRow(2).getCell(1).getCellStyle().getFillForegroundXSSFColor() == null
如果单元格在 (1,1) 中具有像这种绿色这样的设计颜色,我将无法获得 XSSF 文件的颜色信息。