XSSFWorkBook获取cell为NULL

2020-06-09 21:51发布

问题:

int rowCount = sheet.getLastRowNum();
XSSFCellStyle setBorder = wb.createCellStyle();
for(int rowNum = 0;rowNum<=0;rowNum++){
int cellCount = sheet.getRow(rowNum).getLastCellNum();
for(int cellNum = 1;cellNum<=cellCount;cellNum++){

            setBorder.setBorderLeft(XSSFCellStyle.BORDER_THIN);
            setBorder.setBorderRight(XSSFCellStyle.BORDER_THIN);
            setBorder.setBorderTop(XSSFCellStyle.BORDER_THIN);
            setBorder.setBorderBottom(XSSFCellStyle.BORDER_THIN);
            XSSFCell cell= row.getCell(cellNum);
            System.out.println(cell.type);
            cell.setCellStyle(setBorder);
        }
    }

XSSFCell cell= row.getCell(cellNum);这句代码获取的cell值为null rowNum和CellNum值都对 应该怎么获取某一行的某个单元格 并给它附上边框样式

回答1:

要明确,行的单元格是从0开始还是从1开始。可以试试 row.getCell(cellNum - 1);



回答2:

简单的原因是:
当单元格没有值时,getcell为null。
解决方案:
判断为null时,createcell一下。



回答3:

检查row对象是否是当前行对象或者看当前单元格是否为空