判断用npoi 读取 excel 文件中的数据类型是日期OR数字

微博:https://weibo.com/6274976536/profile?rightmod=1&wvr=6&mod=personinfo&is_all=1 

if (newrow.GetCell(j) != null)

                                        {
                                            switch (newrow.GetCell(j).CellType)

                                            {

  case CellType.Numeric:
                                                    if (HSSFDateUtil.IsCellDateFormatted(newrow.GetCell(j)))
                                                    {
                                                        dataRow[j] = newrow.GetCell(j).DateCellValue;
                                                    }
                                                    else
                                                    {
                                                        dataRow[j] = newrow.GetCell(j).NumericCellValue;
                                                    }
                                                    break;

                                                //case CellType.Blank:
                                                //    break;
                                                //case CellType.Boolean:
                                                //    break;
                                                //case CellType.Error:
                                                //    break;
                                                //case CellType.Formula:
                                                //   break;
                                                //case CellType.String:
                                                //    break;
                                                //case CellType.Unknown:
                                                //    break;
                                                default:
                                                    dataRow[j] = newrow.GetCell(j);
                                                    break;
                                            }
                                        }

                                    }

解析:本文只处理了日期和数字格式,其他格式未做详解

1.newrow.GetCell(j)   获取当前单元格的值

2.newrow.GetCell(j).CellType  获取当前单元格的数据类型

3.当单元格的数据类型为日期或数字时,进入CellType.Numeric选项

4.HSSFDateUtil.IsCellDateFormatted(newrow.GetCell(j))  判断是否是日期,因为之前判断了数据类型是否为CellType.Numeric,所以在这里只返回true or false. 如果未判断数据类型,当数据类型为字符串等其他类型时,该语句将抛出异常。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值