无法使用System.Data.OleDb.OleDbConnection打开Excel文件
Iam试图打开一个XLSX文件(以便我可以创build一个数据表)Iam使用下面的代码。
System.Data.OleDb.OleDbConnection oleDbCon; System.Data.OleDb.OleDbDataAdapter oleDbDataAd; oleDbCon = new System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + filePath + "';Extended Properties=Excel 8.0;");
但是当文件path包含扩展名为xlsx的文件时,出现错误“外部表格不是预期的格式”。
上面的代码工作正常时,文件扩展xls。
我必须更改连接string吗?
任何帮助吗?在此先感谢。
将连接string更改为
public static string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";
请参阅Excel“外部表格未处于预期的格式”。
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source=" + Path +";"+"Extended Properties=Excel 8.0;"; OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); string strExcel = ""; OleDbDataAdapter myCommand = null; DataSet ds = null; strExcel="select * from [sheet1$]"; myCommand = new OleDbDataAdapter(strExcel, strConn); ds = new DataSet(); myCommand.Fill(ds,"table1"); return ds;
.xlsx具有不同的连接string