我正在使用Apache POI java并希望获得非空行的总数。我成功处理了所有列的整行。现在我假设我得到一个有多行而不是单行的Excel表格......那么怎么去做呢?我正在考虑获取总行数(int n),然后循环,直到我< = n但不确定。Apache POI行号
建议最受欢迎:)
注意:Apache POI版本是3.8。我不处理Xlsx格式......只有xls。
是的,我试过这个代码,但得到的回报20 ....给我只有5行
FileInputStream fileInputStream = new FileInputStream("COD.xls");
HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream);
HSSFSheet worksheet = workbook.getSheet("COD");
HSSFRow row1 = worksheet.getRow(3);
Iterator rows = worksheet.rowIterator();
int noOfRows = 0;
while(rows.hasNext()) {
HSSFRow row = (HSSFRow) rows.next();
noOfRows++;
}
System.out.println("Number of Rows: " + noOfRows);
你究竟做了什么,什么不工作?你能提供一些代码吗? – nansen 2012-04-01 11:22:16
这不是很好,但我想这是如何做到的。您可以直接在foreach循环中使用HSSFSheet,因为它实现了Iterable。他们不把它称为可怕的扩展表格格式(HSSF),因为它没有任何内容(或许你得到的是20,而不是预期的5行,因为你的行有空值,你必须迭代单元格并跳过所有的行只有空值 –
nansen
2012-04-01 11:38:55
我想我解决了它...因为我已经在Excel表格中下拉菜单,所以这些列表中的某个地方存在,现在它正在工作并显示正确的行号 – 2012-04-01 11:55:22