Excel跳过第一行?
我正在使用OleDbCommand导入一个xls文件到ds。 我遇到的问题是在我的第一行跳过的foreach。 我无法弄清楚为什么。 有什么build议么?
cmd.CommandText = string.Format("SELECT * FROM [{0}$]", worksheetName); conn.Open(); var adapter = new OleDbDataAdapter(); var ds = new DataSet(); adapter.SelectCommand = cmd; adapter.Fill(ds); var table = ds.Tables[0]; foreach(DataRow row in table.Rows){ // rest of my code }
将连接string(如注释中所述)更改为:
string cnn = string.Format( "Provider=Microsoft.ACE.OLEDB.12.0;" + "data source={0}{1}{2};" + "Extended Properties=Excel 8.0;", fileLocation, fileName, fileExtension);
至:
string cnn = string.Format( "Provider=Microsoft.ACE.OLEDB.12.0;" + "data source={0}{1}{2};" + "Extended Properties=Excel 8.0;HDR=No", fileLocation, fileName, fileExtension);
检查你的连接string。 它最有可能包含:
HDR=Yes
这表示第一行是一个标题
也许你已经告诉它跳过第一行。 我记得听起来像FirstRowIsHeader的属性。 我想如果这是真的,那么它跳过。 这可以在创build连接的时候改变