NPOI 读Excel 日期格式

转自:https://www.cnblogs.com/craigtao/p/6322172.html

 

如果直接使用下面的方式读取的时间格式,是一串数字

string unit = cell.ToString();

比如excel中的时间是 2017/1/20 10:20:21

上面的方式读取出来后是这样的格式: 1/20/17 10:20:21

 

突然想到,是不是可以判断是什么类型呢? 

糟糕,NPOI还没有提供判断是不是日期类型的,单步调试,发现日期类型也是 Numeric 的,

好在可以使用.net 自身提供的 DateUtil.IsCellDateFormatted 方法可以判断读取的单元值是否为日期类型

看代码:

复制代码
ICell cell = row.GetCell(i_cell);

if (cell.CellType == CellType.Numeric && DateUtil.IsCellDateFormatted(cell))
{
       unit = cell.DateCellValue.ToString();
}
else { unit = cell.ToString(); }
复制代码

 

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

转载于:https://www.cnblogs.com/juneyss/p/9548931.html

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值