用datatable读取excel的数据,代码如下:
string strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties='Excel 8.0;HDR=NO;'";
OleDbConnection con = new OleDbConnection(strcon);
List<string> sheetnamelist = new List<string>();
con.Open();
System.Data.DataTable dt = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
string sheetnamne = "";
for (int i = 0; i < dt.Rows.Count; i++)
{
sheetnamne = dt.Rows[i]["TABLE_NAME"].ToString();
sheetnamelist.Add(sheetnamne);
}
string pp = sheetnamelist[0].ToString();
OleDbDataAdapter oda = new OleDbDataAdapter("select * from[" + pp + "]", con);
System.Data.DataTable ds = new System.Data.DataTable();
oda.Fill(ds);
我的excel表里面有几行数据是有40列的,但是那行数据就只能读到21列的数据,22列开始的数据全部是空字符串,求解