如何在c#上获取所有xml数据(OleDbConnection)

本文关键字:数据 xml OleDbConnection 获取 | 更新日期: 2023-09-27 18:08:23

我在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;
}

当我想调试并查看数据集上的内容时,除了第一行之外,所有数据都在。

有人能帮忙吗?

谢谢

如何在c#上获取所有xml数据(OleDbConnection)

你的第一行应该包含标题名称,如果你使用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'""