OleDbDataAdapter与OleDbDataReader方式读取EXCEL并转换为DataTable
OleDbDataAdapter方式:
/// <summary>/// 读取excel的表格放到DataTable中 ---OleDbDataAdapter /// </summary>/// <param name="strSql"></param>/// <param name="excelpath">excel路径</param>/// <returns>datatable</returns>public static DataTable readexcel(string excelpath,string strSql){OleDbConnection objConn = null;DataTable dt = new DataTable();try{string excelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" + excelpath + ";Excel 8.0;HDR=NO;IMEX=1";//HDR=YES第一行是标题,NO第一行不是标题;IMEX=1表示导入模式,这个模式开启的 Excel 档案只能用来做“写入”用途,还有个重要作用:强制将混合数据转换为文本,可读出excel的数字型的内容。objConn = new OleDbConnection(excelConn);objConn.Open();OleDbCommand objCmd = new OleDbCommand(strSql, objConn);OleDbDataAdapter adr = new OleDbDataAdapter();adr.SelectCommand = objCmd;adr.Fill(dt);objConn.Close();return dt;}catch (Exception ex){MessageBox.Show(ex.Message);return null;}}
OleDbDataReader 方式:
/// <summary>/// 读取excel的表格放到DataTable中 ---OleDbDataReader /// </summary>/// <param name="strSql"></param>/// <param name="excelpath">excel路径</param>/// <returns>datatable</returns>public static DataTable readexcel(string excelpath,string strSql){string excelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" + excelpath + ";Excel 8.0;HDR=NO;IMEX=1";//HDR=YES第一行是标题,NO第一行不是标题;IMEX=1表示导入模式,这个模式开启的 Excel 档案只能用来做“写入”用途,还有个重要作用:强制将混合数据转换为文本,可读出excel的数字型的内容。DataTable dt = new DataTable();try{using (OleDbConnection connection = new OleDbConnection(excelConn)){OleDbCommand command = new OleDbCommand(strSql, connection);connection.Open();OleDbDataReader reader;reader = command.ExecuteReader();dt.Load(reader); //直接把reader转换为datatablereader.Close();}return dt;}catch (Exception ex){MessageBox.Show(ex.Message);return null;}}
从上述两个例子不难看出,其实excel也相当于一个数据库,读取excel的sql语句如:string strSql = “Select * From [sheet1$A10:L24]”;//读取sheet1工作表A10到L24区域的内容
类似的,读取oracle等数据库,只需把数据库引擎等改为相应的类型就可以了。
OleDbDataAdapter与OleDbDataReader方式读取EXCEL并转换为DataTable相关推荐
- 【c#操作office】--OleDbDataAdapter 与OleDbDataReader方式读取excel,并转换为datatable
OleDbDataAdapter方式: /// <summary>/// 读取excel的表格放到DataTable中 ---OleDbDataAdapter /// </su ...
- php把excel变成数组,PHP excel读取excel文件转换为数组
/* 备注:先去下载PHP EXCEL--http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=phpexcel&a ...
- python 读取excel太慢_Python 读取excel并转换为字典
方法一:利用利用xlrd读取excel文件 其实整个过程比较简单,利用xlrd读取excel文件,再把读取到的数据转换为dict即可. 1.安装 xlrd pip install xlrd 2.读取文 ...
- Python 读取excel并转换为字典
方法一:利用利用xlrd读取excel文件 其实整个过程比较简单,利用xlrd读取excel文件,再把读取到的数据转换为dict即可. 1.安装 xlrd pip install xlrd 2.读取文 ...
- Vue读取Excel文件转换为Html预览,打印
Vue读取网络路径Excel文件转换为Html预览,打印 前言 一.预览EXCEL文件 1.获取网络路径Excel文件 2.转换格式后的数据 3.最终结果 二.打印文件 前言 我们需要对一些Excel ...
- .Net 使用oledb方式读取Excel
开发.net项目使用microsoft.ACE.oledb读取excel文件: 1 连接串: string strCon =string.Format("Provider=Micros ...
- java poi方式读取Excel的图片
POM <!-- poi --> <dependency><groupId>cn.afterturn</groupId><artifac ...
- C#读取excel数据到datatable中
1 DataTable dtGBPatient = new DataTable(); 2 3 string strConn;string excelName; 4 5 //注意:把一个excel文件看 ...
- 读取Excel还用POI?试试这款开源工具
点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者 | 优雅先生 来源 | my.oschina.net/feichexia/blog/1 ...
最新文章
- 【Elasticsearch 5.6.12 源码】——【3】启动过程分析(下)...
- codeforce 570 problem E 51Nod-1503-猪和回文
- 关于chm文件打不开的解决方案
- ansi编码_了解字符编码,不再恐惧文件乱码
- nginx编译安装_Nginx编译安装nginx-upsync-module模块以实现动态负载
- MongoDB Shell和Robo3T使用以及与SQL语法比较
- php 物联网应用,蜂窝物联网的概念以及应用
- 但自去年封测后的cqbgbbs
- 配置说明_温室移动喷灌机简介以及配置说明
- linux网络配置、ssh、scp及命令优先级作业
- 3 css 奖品出现弹出动画_10 个 GitHub 上超火的 CSS 奇技淫巧项目,找到写 CSS 的灵感!...
- No repository found containing,eclipse 自动更新erro 解决
- centos安装过程中gpt报错解决方案
- top -bcn -1
- 什么是存储过程,存储过程的作用及好处
- html弹窗确认取消公告代码,javascript实现确定和取消提示框效果
- 解决Android7.0严苛模式问题
- mysql 签到_签到功能,用mysql还是redis?
- jmeter mysql查询结果提取_jmeter(11)-jdbc请求及请求后的响应结果如何提取
- 06|领域拆分:如何合理地拆分系统?
热门文章
- Matlab中title函数使用
- 用表单实现qq注册页面
- (附源码)基于web的酒店预订及个性化服务系统 毕业设计241822
- ZZULIOJ.1125: 上三角矩阵的判断
- git token使用
- starUML安装亲测有效
- 读陈黎娟的《C、C++实践进阶之道,写给程序员的编程书》--关于指针
- Grabber/RapGet Rapidshare下载工具下载
- Bluetooth篇 开发实例之十 官网的Bluetooth Chat sample app.
- 惠普微型计算机怎么拆,笔记本拆机教程之清理风扇灰尘图文教程(惠普HP笔记本DV6拆解详细教程)...