我从excel获取数据,我需要计算某些单元格包含空值的行。代码没有返回任何内容。对于在此单元格中包含某些值的行,它正常工作。你能帮我解决如何处理空值的单元格吗?
代码如下:
HSSFSheet sheet = workbook.getSheetAt(1);
// Get iterator to all the rows in current sheet
Iterator<Row> rowIterator = sheet.iterator();
// Iterate through rows
while (rowIterator.hasNext()) {
Row row = rowIterator.next();
// Index of column D is 3 (A->0, B->1, etc)
Cell cellD = row.getCell(3);
Cell cellG = row.getCell(6);
//
String key = null;
Integer value = null;
// finding cell type
int cellTypeG = cellG.getCellType();
// getting value from first cell
key = cellD.getStringCellValue();
// fetching value to the Double, to be able to compare data
if (Cell.CELL_TYPE_NUMERIC == cellTypeG) {
value = new Double(cellG.getNumericCellValue()).intValue();
if (value != null) {
if (map.containsKey(key)) {
map.put(key, map.get(key) + 1);
} else {
map.put(key, 1);
}
}
}
}
// cycle which is filling the map
for (Entry<String, Integer> e : map.entrySet()) {
System.out.println(e.getKey() + ": " + e.getValue());
}
答案 0 :(得分:0)
你能帮我解决如何处理空值的单元格吗?
使用StringUtils.isEmpty()
检查单元格是否为空/黑色。
例如,StringUtils.isEmpty(cellD.getStringCellValue())
。如果单元格为空或为空,则返回true
。