概述
解析excel时会出现单元格为null的情况,这是因为excel编辑数据时该单元格没有被鼠标点击过,下面是关于单元格为null的处理方式。
第一种:if 判断
获取单元格时可能出现null,也有可能出现空字符串“”,所以我们需要对两种进行判断
//判断单元格是否为null和单元格类型是否为空
Cell dataCell = dataRow.getCell(j);
if(dataCell != null || dataCell .getCellType() != Cell.CELL_TYPE_BLANK){
}
第二种:获取单元格时,设置策略
row.getCell(cellIndex)
row.getCell(cellIndex, Row.CREATE_NULL_AS_BLANK)
//numberOfCells是最后一列数据的行号
for (int j = 0; j < numberOfCells; j++) {
Cell dataCell = dataRow.getCell(j, Row.CREATE_NULL_AS_BLANK);//单元格为null时默认为空
dataCell.setCellType(1);//设置单元格类型为String类型
//getCellFormatValue是自定义方法
String dataValue = ExcelUtils.getCellFormatValue(dataCell);//数据行单元格数据
}
三种策略
设置策略时:Row.MissingCellPolicy.CREATE_NULL_AS_BLANK和Row.CREATE_NULL_AS_BLANK
会根据版本有所不同。
当取到null,返回空字符串blank:
row.getCell(cellIndex, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK)
当取到null返回null,取到blank返回blank:
row.getCell(cellIndex, Row.MissingCellPolicy.RETURN_NULL_AND_BLANK)
当取到空字符串blank,返回null:
row.getCell(cellIndex, Row.MissingCellPolicy.RETURN_BLANK_AS_NULL)
最后
以上就是积极酸奶为你收集整理的poi 读取单元格为null者空字符串的全部内容,希望文章能够帮你解决poi 读取单元格为null者空字符串所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复