C#将Excel中的数据转换成DataSet
作者:hebedich 时间:2021-10-29 18:20:55
使用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();
}
}
以上所述就是本文的全部内容了,希望大家能够喜欢。
标签:C#,Excel,DataSet
0
投稿
猜你喜欢
Java语言描述MD5加密工具类实例代码
2021-09-18 07:07:34
Unity多屏幕设置的具体方案
2023-12-12 12:05:24
JAVA技术实现上传下载文件到FTP服务器(完整)
2023-08-26 15:35:43
Android在linux下刷机教程
2023-09-03 17:21:04
Spring Boot实现STOMP协议的WebSocket的方法步骤
2022-10-01 07:12:27
C#操作串口通信协议Modbus的常用方法介绍
2023-01-20 04:06:58
Asp.Net中避免重复提交和弹出提示框的实例代码
2022-10-01 19:57:26
c#制作类似qq安装程序一样的单文件程序安装包
2021-07-22 17:13:31
Java多线程之Park和Unpark原理
2023-03-29 15:46:11
Android RollPagerView实现轮播图
2023-06-12 21:10:32
Android开发中解析xml文件XmlUtils工具类与用法示例
2023-03-26 01:05:45
Android自定义View实现水波纹引导动画
2021-07-02 05:42:25
一文带你了解C#中抽象方法与虚方法的区别
2023-07-23 00:14:32
C#检查foreach判读是否为null的方法
2021-10-28 01:37:24
使用Java程序模拟实现新冠病毒传染效果
2022-09-12 20:26:14
android自定义简单时钟
2022-01-10 03:00:22
Android自定义ViewPager指示器
2023-11-29 03:30:31
Java 使用IO流实现大文件的分割与合并实例详解
2023-08-23 09:33:33
Springboot2以代码的方式统一配置Jackson教程
2021-08-30 16:47:33
Java信号量Semaphore原理及代码实例
2021-10-02 21:55:08