首页 > 解决方案 > 读取空白单元格Apache POI 3.17

问题描述

我正在使用 Apache POI 3.17 来读取一些 excel 数据。我的第二列(索引为 1,因为索引为 0)为空,我希望能够读取它,但无法让我的代码将单元格读取为空。我有这个不起作用:

Cell c = row.getCell(1, Row.RETURN_BLANK_AS_NULL);
      if (c == null) {
         // do whatever
 }

但是第二个参数不能带入。我得到“RETURN_BLANK_AS_NULL 无法解析或不是字段”

标签: javaexcelnullapache-poi

解决方案


自 POI-3.15-beta2 起,类本身中的常量Row已被弃用,自 POI-3.17 起标记为删除。 此差异显示了这些常量在 2016 年 6 月被弃用的时间。它们在 3.17 中被删除。

在 3.17 之前,枚举Row.MissingCellPolicy已经被定义为替换。如果您使用的是 3.17,那么您必须使用该枚举;它被定义为Row接口的成员。尝试

Cell c = row.getCell(1, Row.MissingCellPolicy.RETURN_BLANK_AS_NULL);

推荐阅读