0

我对 poi 和 XSSF 有一个大的单元格样式问题。

excel示例

编辑 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 文件的颜色信息。

4

0 回答 0