excel数据读取器问题 [英] excel datareader issue

查看:158
本文介绍了excel数据读取器问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用excel数据读取器,excel格式为.xlsx,在将数据导入数据集时如何将OA时间转换为.net datetime?任何帮助将不胜感激.

I am working with excel datareader, the excel format is .xlsx, How can I convert OA time to .net datetime while importing data into dataset?Any help would be appreciated.

FileStream stream = File.Open(strTempPath, FileMode.Open, FileAccess.Read);

if (Path.GetExtension(strTempPath).Equals(".xls"))
    // Reading from a binary Excel file ('97-2003 format; *.xls)
    excelReader = ExcelReaderFactory.CreateBinaryReader(stream); 
else
    //Reading from a OpenXml Excel file (2007 format; *.xlsx)
    excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream); 

excelReader.IsFirstRowAsColumnNames = true;

DataTable result = new DataTable();

result = excelReader.AsDataSet(true).Tables[0];

推荐答案

在周围使用try catch块:
Use try catch block around :
DateTime.FromOADate(double d)





try
{  
 double d = double.Parse(b);

 // Get the converted date from the OLE automation date.
 DateTime conv = DateTime.FromOADate(d);
}
catch{}


http://msdn.microsoft.com/zh-CN /library/system.datetime.fromoadate(v=vs.90).aspx [


http://msdn.microsoft.com/en-us/library/system.datetime.fromoadate(v=vs.90).aspx[^]


这篇关于excel数据读取器问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆