XSSF计数缺less的行数

我正在尝试编写一个读取Excel模板的函数,并开始在某个行索引处写入数据。 但是,我发现编号跳过了模板中的空白行。 有没有办法在迭代过程中计算空行?

我试图find一个等同于缺less单元策略的行 。 我也尝试了这两种迭代方式:

//simple for loop for (Row row : sheet1) { for (Cell cell : row) { ... } } //iterator while (rows.hasNext()) { XSSFRow row = ((XSSFRow) rows.next()); ... } 

两者似乎都忽略空行。 这会导致问题,因为我的模板有空白的行来分隔引起行索引的部分,而且我必须手动更正目标索引,以执行“开始在工作表第5行中写入”这样的任务。

根据我的理解,你的问题是你有一些行,这是空的,但你不能找出空白行(即没有细胞)。 如果我是正确的,你可以使用下面的检查(以为我没有检查过,但我认为它应该工作)。

 if(row!=null){ for (int cellNo = 0; cellNo < lastColumn; cellNo ++){ Cell cell = row.getCell(cellNo , Row.RETURN_BLANK_AS_NULL); if(cell == null){ //Code for the Blank Rows } } } 

尝试这个。 它会将空值显示为空白。

  for(Row blankRow : sheet) { for(int cn=1; cn<blankRow.getLastCellNum()-1; cn++) { Cell cells = blankRow.getCell(cn, Row.CREATE_NULL_AS_BLANK); } }