Faceci Obecnie korzystam z biblioteki punktów POI 3.9 do pracy z plikami Excel. Wiem o funkcji getLastRowNum()
, która zwraca liczbę wierszy w pliku Excel.Jak uzyskać liczbę wierszy w pliku Excel przy użyciu biblioteki punktów POI?
Jedynym problemem jest getLastRowNum()
zwraca liczbę z liczbą począwszy od 0.
Więc jeśli plik Excel używa pierwszych 3 rzędach, getLastRowNum()
powraca 2. Jeśli plik Excel ma tylko 1 wiersz, getLastRowNum()
powroty 0.
Problem występuje, gdy plik programu Excel jest całkowicie pusty. getLastRowNum()
nadal zwraca 0, więc nie mogę stwierdzić, czy plik Excel ma 1 wiersz danych, czy jest pusty.
Jak zatem wykryć, czy plik Excel jest pusty, czy nie?
+1 Marcias. Tylko jeśli ktoś usunie komórki, po prostu naciskając klawisz Delete, wydaje się, że wiersze nadal istnieją fizycznie i zwracana jest stara liczba. – anujin
Cóż, myślę, że jeśli chcesz policzyć wiersze, które rzeczywiście mają jakąś niepustą wartość, będziesz musiał sam go powtórzyć. Nie jestem pewien, ale rozumiem, że ta metoda zwraca liczbę wierszy, które kiedykolwiek były "zadeklarowane". – macias
OSTRZEŻENIE: Jeśli arkusz ma puste wiersze, to parametr getPhysicalNumberOfRows nie uwzględnia ich w liczonej liczbie. Jednak getLastRowNum robi dokładnie to, co mówi na puszce.Aby powtórzyć wszystkie wiersze, należy użyć getLastRowNum + 1 jako górnej granicy w pętli iteracji - zwracając uwagę na obsługę wierszy, które mogą nie istnieć. –