我一直在POI中編寫代碼以將數據輸入到Excel工作表中。首先,我需要遍歷一組行,我不確定其中有多少行,可能是10或100.但是我發現最後有一個空白單元格。之後,空白再次有一組行。我對第二組沒有打擾。我需要找出第一組是否已經結束。使用單元格引用檢查空白單元格
這很混亂。現在我的工作表中有5位用戶,如下所示。第五位用戶之後有一個空白單元格。我試圖打印所有的用戶,如果有一個空白的停止它。
AAA
BBB
CCC
DDD
EEE
JJJ
我正在使用下面的代碼來完成這項工作。
String userName;
CellReference ref = null;
Row row;
Cell cell;
do {
userName = "B" + i;
ref = new CellReference(userName);
row = sheet.getRow(ref.getRow());
cell = row.getCell(ref.getCol());
System.out.println(cell.getStringCellValue() + "\t" + userName);
i++;
} while (row != null);
但是我得到的輸出如下。
AAA B4
BBB B5
CCC B6
DDD B7
EEE B8
Exception in thread "main" java.lang.NullPointerException
at FinalSheetFillData.main(FinalSheetFillData.java:26)
請讓我知道我在哪裏錯了,我該如何解決這個問題。
感謝
仍然給了我同樣的錯誤,但thistime上面轉移像 'AAA B4 BBB \t B5 異常線程 「main」 CCC \t B6 DDD B7 EEE B8 顯示java.lang.NullPointerException (FinalSheetFillData.java:26)' – Rakesh
也許'cell'變量爲空?如果第26行是'if(cell.getStringCellValue()!= null){'然後嘗試檢查'cell'是否爲null,而不是'cell.getStringCellValue()' - 請參閱http://stackoverflow.com/questions/ 31184499/apache-poi-getcell-error-java-lang-nullpointerexception-can-read-cell-if?rq = 1 –
即使在你讀的行上,行也不會等於null,它不爲null。它爲N」。 –