我收到了关于OleDB的错误 . 我只想将我的excel文件导入Gridview .
这是我的代码 .
string connstr =“Provider = Microsoft.Jet.Oledb.4.0; Data Source = C:\ a.xls; Extended Properties = Excel 8.0; HDR = YES; IMEX = 1”; OleDbConnection conn = new OleDbConnection(connstr);
string strSQL =“从[Sheet1 $]中选择*”;
OleDbCommand cmd = new OleDbCommand(strSQL,conn);
DataSet ds = new DataSet();
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(DS);
GridView1.DataSource = ds;
GridView1.DataBind();
当我构建项目没有错误,但当我运行这个项目时,我得到一个这样的错误:
System.ArgumentException:初始化字符串的格式不符合从索引47开始的规范 . 第21行:字符串connstr =“Provider = Microsoft.Jet.Oledb.4.0;数据源= C:\ a.xls;扩展属性= Excel 8.0; HDR = YES; IMEX = 1“;第22行:第23行:OleDbConnection conn = new OleDbConnection(connstr);
我怎样才能解决这个问题?
2 回答
您的字符串connstr需要扩展属性值的双引号 . 例如 . :
\是c# string literals中的特殊字符 . 要在c#中指定字符串中的路径,请使用转义:
或使用逐字字符串: