首页 > 编程 > C# > 正文

C#将Excel中的数据转换成DataSet

2020-01-24 02:07:02
字体:
来源:转载
供稿:网友

使用C#在不借助第三方插件的情况下将Excel中的数据转换成DataSet

/// <summary>    /// EXCEL数据转换DataSet    /// </summary>    /// <param name="filePath">文件全路径</param>    /// <param name="search">表名</param>    /// <returns></returns>        private DataSet GetDataSet(string fileName)    {      string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties='Excel 12.0;HDR=Yes;IMEX=1';";      OleDbConnection objConn = null;      objConn = new OleDbConnection(strConn);      objConn.Open();      DataSet ds = new DataSet();      //List<string> List = new List<string> { "收款金额", "代付关税", "垫付费用", "超期", "到账利润" };      List<string> List = new List<string> { };      DataTable dtSheetName = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });      foreach (DataRow dr in dtSheetName.Rows)      {        if (dr["Table_Name"].ToString().Contains("$") && !dr[2].ToString().EndsWith("$"))        {          continue;        }        string s = dr["Table_Name"].ToString();        List.Add(s);      }      try      {        for (int i = 0; i < List.Count; i++)        {          ds.Tables.Add(List[i]);          string SheetName = List[i];          string strSql = "select * from [" + SheetName + "]";          OleDbDataAdapter odbcCSVDataAdapter = new OleDbDataAdapter(strSql, objConn);          DataTable dt = ds.Tables[i];          odbcCSVDataAdapter.Fill(dt);        }        return ds;      }      catch (Exception ex)      {        return null;      }      finally      {        objConn.Close();        objConn.Dispose();      }    }

以上所述就是本文的全部内容了,希望大家能够喜欢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表