45

Poi.jar を使用して Excel シートから入力を取得しており、セルが空かどうかを確認する方法を知りたいと思っていました。

現在、以下のコードを使用しています。

cell = myRow.getCell(3);
if (cell != null) {
    cell.setCellType(Cell.CELL_TYPE_STRING);

    //System.out.print(cell.getStringCellValue() + "\t\t");
    if (cell.getStringCellValue() != "")
        depend[p] = Integer.parseInt(cell.getStringCellValue());

    }
}
4

12 に答える 12

3
Cell cell = row.getCell(x, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK);

このトリックは私を大いに助けてくれました。

于 2018-02-19T09:35:21.073 に答える
2

最初に NullPointerException を回避するには、これを追加する必要があります

Row.MissingCellPolicy.CREATE_NULL_AS_BLANK

これにより、NPEが提供される代わりに空白のセルが作成され、@Gagravarrが言ったように何も問題がないことを確認できます.

Cell cell = row.getCell(j, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK);
    if (cell == null || cell.getCellTypeEnum() == CellType.BLANK) 
        // do what you want
于 2018-05-02T19:06:06.753 に答える
0

もう 1 つのオプションもあります。

row=(Row) sheet.getRow(i);
        if (row == null || isEmptyRow(row)) {
            return;
        }
Iterator<Cell> cells = row.cellIterator();
    while (cells.hasNext())
     {}
于 2015-09-22T04:22:33.347 に答える