我试图打开一个XLSX文件(这样我就可以创建一个数据表) 我使用下面的代码。
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;");
但是当文件路径包含扩展名为xlsx的文件时,我收到错误 “外部表格不符合预期格式。”
当文件是扩展xls时,上面的代码工作正常。
我是否必须更改连接字符串?
有任何帮助吗?先谢谢。
答案 0 :(得分:4)
将连接字符串更改为
public static string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
+ path + ";Extended Properties=Excel 12.0;";
答案 1 :(得分:2)
答案 2 :(得分:2)
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;
答案 3 :(得分:1)
.xlsx有不同的connectionstrings