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