当前,我正在读取具有以下条件的整个Excel文件-
while (rowIterator.hasNext() )
{
do operations ()
}
现在,我正在尝试从特定的行号块中读取数据,并且如果我提供以下代码
while (rowIterator.hasNext() && rowIterator.next().getRowNum() > start && rowIterator.next().getRowNum() < end)
它不起作用,什么是解决方法
谢谢
答案 0 :(得分:0)
您误解了迭代器在Java中的工作方式。您可以认为每个迭代器中都有一个指针。当您调用next()
时,指针将移至下一个位置。因此,您在while条件中进行了两个“ next()”调用,这使指针从当前位置移了两步。这是不正确的。
尝试一下:
while (rowIterator.hasNext()) {
next = rowIterator.next();
if (next > start && next < end) {
// do your thing
}
}