如何使用 Apache POI 3.6 在 Excel 工作表中获取超过 255 列
2022-09-02 11:34:39
我正在 Excel 中创建日历。列 1 是 01.01.2010 (dd.MM.yyyy),列 2 是 02.01.2010,依此类推。
这是我的代码:
int day_cell = 0;
for(int i = 0; i < days.size(); i++)
{
Date day = days.get(i);
HSSFCell cell = row.createCell(day_cell++);
cell.setCellValue(day.toString());
}
当我到达第256列时,POI会抛出这个异常:
java.lang.IllegalArgumentException: Invalid column index (256). Allowable column range for BIFF8 is (0..255) or ('A'..'IV')
at org.apache.poi.hssf.usermodel.HSSFCell.checkBounds(HSSFCell.java:926)
at org.apache.poi.hssf.usermodel.HSSFCell.<init>(HSSFCell.java:162)
at org.apache.poi.hssf.usermodel.HSSFRow.createCell(HSSFRow.java:141)
at org.apache.poi.hssf.usermodel.HSSFRow.createCell(HSSFRow.java:119)
我发现这个错误报告表明它在3.6版本中已修复。我们使用的是3.5,但改用3.6似乎没有任何好处。有人有任何提示吗?
https://issues.apache.org/bugzilla/show_bug.cgi?id=46806
编辑:似乎错误问题与公式有关。