Excel中导出的日期时间不对的临时解决方法

不时到大家有没有碰到过,将Excel里面的数据导出
论坛上以前的帖子也看过,多数是用jet的驱动在直接调用SQL语句从[&sheet1
]或者其他的sheet中导出数据但是这样有个问题,如果在Excel中存储的数据不
是标准格式的时候就会出问题。
比方说:
Excel表格中的某一列使用了日期时间格式,但是再输入的时候,在日期的前面
多加了一个空格,在使用驱动方式连接提取数据的时候取出来的时间就是""
前一阵,碰到了这个问题,使用了下面的这个方法解决的:
因为在.net中可以直接使用Excel类,并且可以直接从Excel中提取某一单元格的
数据,这个技术很多帖子都写了,我就不罗嗦了。大家搜一下有很多。
但是使用这种技术,如果提取的是日期时间格式的时候,提取出来的是一个整数
并且使用Convert.DateTme函数不能进行转化(不知道这个是不是2002的一个bug)
因为MM开发要用2002没办法!
错依旧使用了一个比较本的办法
DateTime base = new DateTime(1900,1,1);
因为1900.1.1通过Excel导入的时候返回值是1
所以通过Excel导入的那个整数值减去1就是从1900.1.1日以后需要增加的日期
使用下面的函数
base=base.AddDay(value-1);
得到一个新的日期时间类型值,现在Excel中的日期时间类型就成功转化过来了

ps:我也说了这只是一个临时的解决方案,其实将Excel的数据倒出来,并不简单
如果Excel的数据不是正确的格式经常丢失数据。还清高人指点。

转载于:https://www.cnblogs.com/lisugar/archive/2004/11/18/65168.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值