Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java cell.getCell()的ApachePOI Nullpointer异常_Java_Apache Poi - Fatal编程技术网

Java cell.getCell()的ApachePOI Nullpointer异常

Java cell.getCell()的ApachePOI Nullpointer异常,java,apache-poi,Java,Apache Poi,每当我试图获得一个细胞时,我面临的问题就会出现。有趣的是,这个函数在到达代码的这一部分之前工作得很好 for (i = 1; i < 555; i++) { try { cell = sheet2.getRow(i).getCell(columnNo); } catch (Null

每当我试图获得一个细胞时,我面临的问题就会出现。有趣的是,这个函数在到达代码的这一部分之前工作得很好

        for (i = 1; i < 555; i++) 
        {           
            try
            {
                cell = sheet2.getRow(i).getCell(columnNo);              
            }
            catch (NullPointerException e)
            {               
                cell = sheet2.getRow(i).createCell(columnNo);
            }
            value = "NOT(ISERROR(MATCH(C" + (i + 1) + ",$N$2:$N$710,0)))";
            cell.setCellFormula(value);
        }
(i=1;i<555;i++)的

{           
尝试
{
单元格=表2.getRow(i).getCell(columnNo);
}
捕获(NullPointerException e)
{               
cell=sheet2.getRow(i).createCell(columnNo);
}
value=“NOT(iError(匹配(C”+(i+1)+),$N$2:$N$710,0))”;
cell.setCellFormula(值);
}
由于try-catch,我得到了createCell的错误,但我相信问题在于我使用getCell的那一行。 我得到以下错误:线程“main”java.lang.NullPointerException中出现异常

就在这部分之前,我有一个for循环(粘贴在下面),它工作得很好

        for (i = 1; i <= incorrect.size(); i++) {
            cell = sheet2.getRow(i).getCell(columnNo);
            if (cell == null)
                cell = sheet2.getRow(i).createCell(columnNo);
            value = incorrect.get(i - 1);
            cell.setCellValue(value);
        }

用于(i=1;i意识到我的错误。循环被设置为运行554次。但是excel文件只有553个条目。因此出现了问题。

我猜你的
sheet2
值为空。逐行调试你的代码,你会发现一个问题。你应该为我们提供更多的代码。sheet2是什么?你有sheet1吗?你什么时候增加columno?您的示例输入是什么?我不希望您向我们粘贴555行,但这是一个如何获取异常的最小示例。您在哪一行获取异常?您从未在共享代码段中调用getCellValue。我认为获取工作表不会有问题。我尝试设置公式的单元格将存储布尔值。不确定检索单元格时是否存在问题。