<connectionStrings>
<add name ="Excel03ConString"
connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};
Extended Properties='Excel 8.0;HDR={1}'"/>
<add name ="Excel07ConString"
connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};
Extended Properties='Excel 12.0 Xml;HDR={1}'"/>
</connectionStrings>
string conStr = "";
string Extension = Path.GetExtension(FilePath);
switch (Extension)
{
case ".xls": //Excel 97-03
conStr = ConfigurationManager.ConnectionStrings["Excel03ConString"]
.ConnectionString;
break;
case ".xlsx": //Excel 07
conStr = ConfigurationManager.ConnectionStrings["Excel07ConString"]
.ConnectionString;
break;
}
conStr = String.Format(conStr, FilePath, isHDR);
OleDbConnection connExcel = new OleDbConnection(conStr);
OleDbCommand cmdExcel = new OleDbCommand();
OleDbDataAdapter oda = new OleDbDataAdapter();
DataTable dt = new DataTable();
cmdExcel.Connection = connExcel;
我正在上传Excel并将数据导入数据表。我有另一个excel,它是一种默认数据,数据与上传的excel数据进行比较以提取结果,但问题是它给出了“外部表格没有预期的格式错误”,并且没有特定的模式。有时应用程序运行正常,没有任何错误,有时在处理过程中,它将通过此错误。
答案 0 :(得分:0)
对我来说问题是我忘了关闭连接。我知道这是一个愚蠢的错误,但是如果你更好地得到这个错误,请检查所有连接是否都已关闭并且所有对象都已正确处理。谢谢