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等数据库,只需把数据库引擎等改为相应的类型就可以了。

【c#操作office】--OleDbDataAdapter 与OleDbDataReader方式读取excel,并转换为datatable相关推荐

  1. OleDbDataAdapter与OleDbDataReader方式读取EXCEL并转换为DataTable

    OleDbDataAdapter方式: /// <summary>/// 读取excel的表格放到DataTable中 ---OleDbDataAdapter /// </summa ...

  2. java操作office和pdf文件java读取word,excel和pdf文档内容

    在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...

  3. NPOI ADO office wps 四种方式 读excel表格

    有的客户装了不同的excel程序,所以做了四种excel文件的读写,在一定程度上可以适应各种情况的客户. npoi :对公式,某些日期兼容的不好,速度很快,不需要装excel程序 ado::对某些日期 ...

  4. .Net 使用oledb方式读取Excel

    开发.net项目使用microsoft.ACE.oledb读取excel文件: 1 连接串: string    strCon =string.Format("Provider=Micros ...

  5. java poi方式读取Excel的图片

    POM ​​​​ <!-- poi --> <dependency><groupId>cn.afterturn</groupId><artifac ...

  6. php把excel变成数组,PHP excel读取excel文件转换为数组

    /* 备注:先去下载PHP EXCEL--http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=phpexcel&a ...

  7. python 读取excel太慢_Python 读取excel并转换为字典

    方法一:利用利用xlrd读取excel文件 其实整个过程比较简单,利用xlrd读取excel文件,再把读取到的数据转换为dict即可. 1.安装 xlrd pip install xlrd 2.读取文 ...

  8. Python 读取excel并转换为字典

    方法一:利用利用xlrd读取excel文件 其实整个过程比较简单,利用xlrd读取excel文件,再把读取到的数据转换为dict即可. 1.安装 xlrd pip install xlrd 2.读取文 ...

  9. Vue读取Excel文件转换为Html预览,打印

    Vue读取网络路径Excel文件转换为Html预览,打印 前言 一.预览EXCEL文件 1.获取网络路径Excel文件 2.转换格式后的数据 3.最终结果 二.打印文件 前言 我们需要对一些Excel ...

最新文章

  1. 创业者如何小步快跑,从0开始实现自己的产品?
  2. 5.1基于JWT的认证和授权「深入浅出ASP.NET Core系列」
  3. targetSdkVersion
  4. NFS共享服务搭建笔记
  5. 【AI白身境】Linux干活三板斧,shell、vim和git
  6. android文件系统管理
  7. linux 软raid创建过程
  8. rocksdb原理_教你玩转MyRocks/RocksDB—STATISTICS与后台线程篇
  9. 表格字体缩小 php_如何快速找出两个Excel表格不同的地方?
  10. zepto源码--filtered, contains,funcArg,setAttribute,className,deserializeVale--学习笔记
  11. 1.MongoDB入门详解
  12. 视觉SLAM十四讲学习1 环境配置
  13. 汇编语言--常用DOS功能
  14. netcfg_route_netstat_setprop 等命令的使用
  15. 读取图片信息并存储数据为CSV文件
  16. VS2015 更换序列号
  17. 修改Visual Studio Code编辑器的主题和代码颜色
  18. 皕杰报表之小程序代码质量检测
  19. [渝粤教育] 西南科技大学 特用经济作物栽培技术 在线考试复习资料
  20. Download模块 (十三)

热门文章

  1. 如何成长为优秀的架构师?架构师成长的4大必经之路
  2. Matplotlib:文本标注,箭头(Annotation) 标注
  3. Oracle 12.2.0.1版本以上的PSU补丁相关知识
  4. 你知道哪些冷门但逆天的手机APP?
  5. oracle memory_max_target memory_target配置说明
  6. GridView中实现双向排序
  7. C#WPF 常用控件
  8. Java中的 移位 运算
  9. 什么是 XML?什么是HTML?什么是XHTML? XML、HTML和XHTM的区别及联系
  10. python bool类型_python打印bool类型-女性时尚流行美容健康娱乐mv-ida网