代码改变世界

C# 读取EXCEL文件出现数据丢失问题

2010-01-31 13:35  何朝阳  阅读(289)  评论(0)    收藏  举报

  将EXCEL数据导出的时候如果同一列数据中既有文字,又有数字!读取时一列中要么文字丢失只剩下数字,要么数字丢失,只剩下文字,这是由第一行的数据类型决定的。出现这种问题是由于数据类型不统一造成的。

  原来的连接字符串为:

string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename + "; Extended Properties=Excel 8.0;";

   查阅资料后问题解决:

string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename + "; Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";

参数解释:

IMEX=1 解决数字与字符混合时,识别不正常的情况

HDR=YES 有两个值:YES/NO,表示第一行是否字段名,默认是YES,第一行是字段名。