簡體   English   中英

工作表給了我空指針 apache poi

[英]sheet gives me null pointer apache poi

我想創建一個文件 .xls 但是當我設置一個值時它給了我空指針。 這是我的代碼:

(文件 xls 在開始時是空的,我需要從代碼創建兩個工作表):

Workbook wb = new HSSFWorkbook();
       Sheet general=wb.createSheet("General"); 
    
    //after this line it gives me null point
                Row row = general.getRow(0);    
                Cell cell = row.getCell(1);   

似乎“將軍”是空的。有人可以幫助我嗎?

getRow(0)拋出異常,因為第 0 行不存在。 您首先需要創建該行:

Row row = general.createRow(0);

Row row = general.getRow(0) 會給你 null 因為該行不存在。 只有使用 general.createRow(0) 創建后,才能使用。 因此,一旦創建了 0 處的 rwo,如果您調用 getRow(0),它將返回該行。 並且只有非空行才能有單元格。

您可以創建自己的 util 方法,如下所示,如果未創建,可用於獲取該行。

public Row getRow(Sheet sheet, int rowNo)
{
    Row row = sheet.getRow(rowNo);
    if(row == null)
    {
        row = sheet.createRow(rowNo);
    }
    return row;
}

row.getCell 也會面臨類似的問題。 它應該首先創建單元格。 或者你可以使用這個。

Cell cell = row.getCell(0, Row.RETURN_BLANK_AS_NULL);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM