首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何修复"Not a legal OleAut date“在C#中读取Excel文件时?

如何修复"Not a legal OleAut date“在C#中读取Excel文件时?
EN

Stack Overflow用户
提问于 2012-09-26 23:59:47
回答 5查看 26.5K关注 0票数 3

我一直在使用excel电子表格,到目前为止,我从未遇到过任何问题。但是,当我试图读取excel文件时,这个错误"Not a legal OleAut date.“突然出现了。有人知道我怎么解决这个问题吗。下面是我用来读取excel并将数据放入数据集中的代码。它以前工作得很好,但在我对数据源进行了一些更改(不涉及日期)之后,出现了这个错误。

代码语言:javascript
运行
复制
var fileName = string.Format("C:\\Drafts\\Excel 97-2003 formats\\All Data 09 26 2012_Edited.xls");
        var connectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties=Excel 8.0;", fileName);

        var adapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", connectionString);

        DataSet Originalds = new DataSet();
        adapter.Fill(Originalds, "Employees"); // this is where the error shows up
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-10-11 23:17:05

我想出了解决这个问题的办法,我把连接字符串改成了最新的oleDB提供程序。

代码语言:javascript
运行
复制
var connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0 Xml;HDR=YES;'", fileName);

我还确保我的excel数据最后一行之后的空格不会被读取为值。

票数 8
EN

Stack Overflow用户

发布于 2017-09-21 21:03:23

查找不同的日期格式,在我的示例中,其中一列是dd/mm/yyyy格式,另一列是mm/dd/yyyy格式。一旦纠正了日期格式,数据导入就可以工作了。

票数 0
EN

Stack Overflow用户

发布于 2019-08-28 16:07:14

在我的例子中,我在表格中手动插入了一个格式错误的日期,它是01/01/0019而不是01/01/2019。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12605799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档