首页 > 技术文章 > NPOI读取Excel日期类型单元格返回一串数字问题

dansediao 2016-07-15 13:24 原文

参考文章地址http://www.cnblogs.com/willick/p/3361311.html

 

用 NPOI 导入 Excel 时,如果不对单元格的类型进行判断,当读取日期型单元格式将返回一串数字

ICell cell = row.GetCell(j);
//Cell为非NUMERIC时,调用IsCellDateFormatted方法会报错,所以先要进行类型判断
if (cell.CellType == CellType.NUMERIC && DateUtil.IsCellDateFormatted(cell))
    dataRow[j] = cell.DateCellValue.ToString("yyyy/MM/dd");
else 
{ dataRow[j]
= row.GetCell(j).ToString(); }

通过DateUtil.IsCellDateFormatted方法可以判断单元格是否为日期格式,是日期格式则可以通过 cell.DateCellValue 获取单元格的日期值。然后可以方便地将其转换为想要的字符串格式。另外 DateUtil.IsCellDateFormatted 方法的参数如果是非 NUMERIC 会报错,所以调用前要确保CellType是否为 NUMERIC。

推荐阅读