查找 Excel 电子表格中的最后一行

2022-09-02 12:08:29

我正在尝试使用Apache的Java POI在Excel电子表格中查找最后一行的索引。

我认为这应该是可能的,或者,但他们似乎没有给出正确的结果。例如,我有一个单行电子表格,这两个函数返回值 1140。另外两行电子表格的值为 1162。getLastRowNum()getPhysicalNumberOfRows()

另一个问题是,我不能只查找第一个空行,因为在有效数据的行之间可能有空行。

那么有没有办法找到最后一行的索引呢?我想我可以要求数据之间没有空行,但我希望有一个更好的解决方案。

编辑:对于使用迭代器的记录没有帮助。它只是迭代了 1140/1162 假定行。


答案 1

我使用poi-3.6-20091214和a获得预期的输出,其中有两个空行,后跟三个占用的行:test.xls

InputStream myxls = new FileInputStream("test.xls");
Workbook book = new HSSFWorkbook(myxls);
Sheet sheet = book.getSheetAt(0);
System.out.println(sheet.getLastRowNum());

输出:4


答案 2

您可以使用以下方法来获取原始行计数。

HSSFSheet worksheet = workbook.getSheet("Role_Mapping");
int rowsNum = worksheet.getPhysicalNumberOfRows();

推荐