我使用NPOI来读取excel文件。如果单元格是数字,则代码为
movie.YourRating = watchListSheet.GetRow(rowNumber).GetCell(newIMDBformat["Your Rating"], MissingCellPolicy.CREATE_NULL_AS_BLANK).NumericCellValue;
但是,如果单元格为空,则返回异常:
"Can not get numerical value from text cell."
将NumericCellValue更改为StringCellValue后,它也会返回异常。我想知道我应该用什么来读取空单元格。 excel文件由SetCellValue()编写。感谢。
答案 0 :(得分:1)
我是npoi的新手,但我的印象是你必须查看CellType
,然后阅读相应的NumericCellValue
,StringCellValue
,BooleanCellValue
,{根据返回的类型{1}}或ErrorCellValue
。
例如,如果是CellFormula
,那么您将使用cell.CellType == CellType.Numeric
获取单元格值,如果cell.NumericCellValue()
,则获得cell.CellType == CellType.String
的单元格值。如果cell.StringCellValue()
那么没有价值,所以你不能试着读一个(或者你会得到一个例外)。