下面的代码有一个小问题。如果我不包含 HDR=NO,代码可以正常工作。 将用于此 WEB 应用程序的 CSV 将没有任何标题信息。 如何将其读入数据集并创建静态列名?
运行以下代码时出现此错误: 找不到可安装的 ISAM。
到目前为止,这是我的代码:
FileUpload1.SaveAs(System.IO.Path.Combine(target, FileUpload1.FileName));
string connString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=Text; HDR=NO;", System.IO.Path.GetDirectoryName(target + "\\" + FileUpload1.FileName));
string cmdString = string.Format("SELECT * FROM {0}", System.IO.Path.GetFileName(target + "\\" + FileUpload1.FileName));
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(cmdString, connString);
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
GridView1.DataSource = dataSet.Tables[0];
GridView1.DataBind();
如有任何帮助,我将不胜感激。
谢谢。
最佳答案
试试 Extended Properties=Text; HDR=NO;
更改为 Extended Properties=""text;HDR=No""
或 Extended Properties=\"text;HDR=No\"
。
当连接字符串的语法不正确时会产生此错误。这通常发生在使用多个扩展属性参数时。
关于c# - 在没有标题的情况下将 CSV 文件读入数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6257826/