C#读取Excel代码:
01 | string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FilePath + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';" ; |
02 | OleDbConnection conn = new OleDbConnection(strConn); |
04 | string strExcel = "select * from [sheet1$]" ; |
05 | OleDbDataAdapter da = new OleDbDataAdapter(strExcel, strConn); |
06 | DataSet ds = new DataSet(); |
13 | throw new Exception( "读取Excel失败:" +ex.Message); |
如果提示"找不到可安装的ISAM",通过google,有两个解决办法:
1.连接字符串问题
1 | Extended Properties= 'Excel 8.0;HDR=NO;IMEX=1' |
//HDR表示要把第一行作为数据还是作为列名,作为数据用HDR=no,作为列名用HDR=yes;通过Imex=1来把混合型作为文本型读取,避免 null值。
上句的左右两个单引号不能少
2.只需注册 Excel ISAM即可
在“运行”对话框中输入回车即可:Regsvr32 c:\WINDOWS\system32\msexcl40.dll