当我使用NPOI阅读Excel工作表时,将跳过空单元格。例如,该行包含A, B, , C
,我使用
IRow row = sheet.GetRow(rowNb)
然后row.Cells[1].ToString()
将输出B
(按预期方式),但row.Cells[2].ToString()
将输出C
而不是空字符串。有没有办法保持空单元格?感谢。
答案 0 :(得分:24)
使用GetCell
:
MissingCellPolicy
方法
ICell cell = row.GetCell(2, MissingCellPolicy.RETURN_NULL_AND_BLANK);
答案 1 :(得分:1)
完成接受的答案后,也可以在工作簿级别上设置策略
workbook.MissingCellPolicy = MissingCellPolicy.RETURN_NULL_AND_BLANK;
这样,在您调用GetCell
时隐式应用该策略,无需每次都将其作为参数传递
ICell cell = row.GetCell(2);
请注意(至少在我使用的版本中),如果您执行row.Cells[index]
,它将忽略该政策,因此仅当您致电row.GetCell(index)