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

时间:2021-05-20

使用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(); } }

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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章