
excel
在asp.net网站中导出
excel文件后,再把文件导入到数据库中。 读取
excel文件时,打开连接出错。错误为:外部表不是预期的格式解决:检查了一下,导出的
excel是标准文件不是html,没错,
excel文件正常。 调试代码,创建连接对象oleDbConnection也正常,但在conn.Open()打开链接时出错。 仔细看了下链接字符串,检查出了错误,
excel版本问题,Exce连接字符串版本是office2003的 ,更改为
excel2007版本则正常导入。 using System.Data.OleDb; using System.Data; public void Read
excelFiless() { //string strConn = Provider=Microsoft.Jet.OleDb.4.0; + data source= + Server.MapPath(
excelFiles/My
excelFile.xls) + ;Extended Properties='
excel 8.0; HDR=Yes; IMEX=1'; //此连接只能操作
excel2007之前(.xls)文件 string strConn =Provider=Microsoft.Ace.OleDb.12.0; + data source= + Server.MapPath(
excelFiles/Mydata2007.xlsx) + ;Extended Properties='
excel 12.0; HDR=Yes; IMEX=1'; //此连接可以操作.xls与.xlsx文件 (支持
excel2003 和
excel2007 的连接字符串) //备注: HDR=yes;是说
excel文件的第一行是列名而不是数据,HDR=No;正好与前面的相反。// IMEX=1 如果列中的数据类型不一致,使用IMEX=1可必免数据类型冲突。 OleDbConnection conn= new OleDbConnection(strConn); OleDbDataAdapter adp = new OleDbDataAdapter(Select * from [Sheet1$], conn); DataSet ds = new DataSet(); adp.Fill(ds, Book1);this.GridView1.DataSource = ds.Tables[Book1].DefaultView; this.GridView1.DataBind(); }