我在c#中有一个函数从电子表格中获取数据
public DataSet getXlsData(HttpPostedFileBase file, string path)
{
var fileName = Path.GetFileName(file.FileName);
oledbConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties="Excel 8.0;HDR=Yes;IMEX=2"");
oledbConn.Open();
OleDbCommand cmd = new OleDbCommand();
OleDbDataAdapter oleda = new OleDbDataAdapter();
DataSet ds = new DataSet();
cmd.Connection = oledbConn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT * FROM [Tasks$]";
oleda = new OleDbDataAdapter(cmd);
oleda.Fill(ds);
oledbConn.Close();
return ds;
}
当我想调试并查看数据集上的内容时,除了第一行之外,所有数据都在。
有人能帮忙吗?
谢谢
你的第一行应该包含标题名称,如果你使用HDR=Yes,否则,它将数据的第一行作为标题名称,并从第二行填充数据。如果是这种情况,您应该将其设置为HDR=No。所以不用
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties="Excel 8.0;HDR=Yes;IMEX=2""
使用这个,
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties="Excel 8.0;HDR=No;IMEX=2""