c# oledb 方式操作excel 简单
1.概要
无非就是把excel的表格当作数据的表格,
1.1.sheet页面等于表名,例: [heet1$] == 表名
1.2.字段等于F*,例:dataRow["F3"]
2.代码
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ExcelOledb测试
{class Program{/// <summary>/// Microsoft Jet 提供程序用于连接到 Excel 工作簿。在以下连接字符串中,Extended Properties 关键字设置 Excel 特定的属性。/// “HDR=Yes;”指示第一行中包含列名,而不是数据,“IMEX=1;”通知驱动程序始终将“互混”数据列作为文本读取。/// Excel 8.0 针对Excel2000及以上版本,Excel5.0 针对Excel97。/// Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""/// String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source=c:/test.xls;" +"Extended Properties=Excel 8.0;";/// string ConnnectionString = "Provider='Microsoft.Ace.OLEDB.12.0';Data Source=c:/test.xls;" + "Extended Properties=Excel 8.0;";/// </summary>/// <param name="args"></param>static void Main(string[] args){Console.WriteLine("ExcelOledb测试");//test1();test2();Console.ReadKey();}static void test1() {string ExcelPath = "灌装机数据通讯表.xlsx";string ConnnectionString = string.Format(@"Provider='Microsoft.Ace.OLEDB.12.0';Data Source={0};" + "Extended Properties=Excel 8.0;", ExcelPath);OleDbConnection Excelconn = new OleDbConnection(ConnnectionString);try{Excelconn.Open();OleDbCommand Excelcomm = new OleDbCommand();//这段代码甚至可以让Connection重定向,根据实际需要选择该写,如果不需要重定向,From TableName就好了 string ExcelCommText = string.Format("select * FROM [Excel 8.0;HDR=yes;DATABASE={0}].[{1}$]", ExcelPath, "MES-PLC_S");OleDbDataAdapter sda = new OleDbDataAdapter(ExcelCommText, Excelconn);DataSet ds = new DataSet();sda.Fill(ds);DataTable dataTable = ds.Tables[0];foreach (DataRow dataRow in dataTable.Rows){Console.WriteLine(dataRow[2]);Console.WriteLine(dataRow["F3"]);}}catch (Exception ex){}}static void test2() {string ExcelPath = "灌装机数据通讯表.xlsx";string ConnnectionString = string.Format(@"Provider='Microsoft.Ace.OLEDB.12.0';Data Source={0};" + "Extended Properties=Excel 8.0;", ExcelPath);OleDbConnection Excelconn = new OleDbConnection(ConnnectionString);Excelconn.Open();DataTable tb = Excelconn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);foreach (DataRow row in tb.Rows){//遍历弹出各Sheet的名称Console.WriteLine(row["TABLE_NAME"]);}}}
}
3.运行结果
略
4.参考连接
c#中采用OLEDB方式来读取EXCEL文件和将数据写入EXCEL文件 - 走看看
C#读取Excel的方法总结_w3cschool
C#导入Excel数据的方式(两种) - 曾小慧 - 博客园
c# oledb 方式操作excel 简单相关推荐
- python小程序嵌入excel_用原生的方式操作Excel,Python玩转Excel神器xlsxwriter详解!...
大家好,在之前的Python办公自动化系列文章中,我们已经介绍了两个Python操作Excel的库openpyxl与xlwings,并且相信大家已经了解这两者之间的异同. 但是在Python中操作Ex ...
- 用原生的方式操作Excel,Python玩转Excel神器xlsxwriter详解!
来源:早起Python 本文就将介绍一个强大的库xlsxwriter.来学习如何用原生的方式操作Excel! 首先还是来简单了解下这三个库之间的区别 " openpyxl:只允许读取和写入. ...
- 大聪明教你学Java | EasyExcel - 用更简单的方式操作Excel
前言 我们在开发应用系统的时候经常遇到操作或解析 Excel 的需求,我们在实现此功能的时候也都是借助 Apach POI 去操作 Excel,但是使用过这个框架的小伙伴都知道,这个框架并不是很好用, ...
- excel oledb mysql_OLEDB操作Excel
使用OLEDB操作Excel 的方法 OleDbConnection conn = null; try { //fileName 表示要操纵的Excel的文件路径,如果excel不存在,现创建它,可以 ...
- asp.net采用OLEDB方式导入Excel数据时提示:未在本地计算机上注册Microsoft.Jet.OLEDB.4.0 提供程序...
笔者在项目中做做了一个从Excel表格中导入数据的模块.大体上asp.net项目中导入Excel大体分成三类: 1)采用c#内置方案System.Data.OleDb(限制较小, 通用) 2)采用Ex ...
- python处理excel的方法有哪些_Python操作Excel简单方法
今天一同学给我发来一个Excel文件,让我帮他找一些信息,打开一开 8000多条数据.自己手工处理是不可能完成的的啦.作为一名程序员,当然要用程序来处理.处理生活中的问题当然是Python最为方便啦. ...
- .Net 使用oledb方式读取Excel
开发.net项目使用microsoft.ACE.oledb读取excel文件: 1 连接串: string strCon =string.Format("Provider=Micros ...
- oledb 操作 excel
oledb excel http://wenku.baidu.com/search?word=oledb%20excel&ie=utf-8&lm=0&od=0 [Asp.net ...
- C#读写EXCEL(OLEDB方式)
用OLEDB方式读取EXCEL的速度是非常快的.但是当Excel数据量很大时.会非常占用内存,当内存不够时会抛出内存溢出的异常. OLEDB方式将Excel作为一个数据源,直接用Sql语句操作数据,并 ...
最新文章
- 每日一皮:循环没写好,导致后面数据覆盖了前面的数据...
- Hibernate统计表中的条数
- 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言—— 1123:图像相似度
- java 多模块项目 包路径冲突_多智能体仿真建模在交通中的应用|MATSim入门指南...
- vue 打包路由报错_Vue下路由History模式打包后页面空白的解决方法
- 第三十三期:使用wireshark抓包分析-抓包实用技巧
- 界面优美的linux,Ubuntu 11.04新版发布 诠释精美用户界面
- java applet运行jmx,通过tomcat设置jvm及添加jmx远程访问、gc输出日志
- 解决QSqlTableModel::setData()崩溃的问题
- Python 辛普森积分法 simps计算sin(x)的值(完美实现)
- wavin flag by k'naan
- 接连倒闭失联的背后 传统健身房生意为什么突然就不行了?
- 有吧友需要PDF的下载站点,好吧,我这边汇总一下
- php中$this-是什么意思
- 多重背包的二进制拆分法
- 3DS动物之森(animal acrossing)游戏记录
- Inline Hook 钩子编写技巧
- 字节跳动 面试 复盘 回顾 2021 过客局
- 康宁杰瑞、君实生物、天境生物人事任命;赛诺菲诺维乐在中国上市新适应证 | 医药健闻...
- 【山外智能车】【IAR】【编译问题】HardFault_Handler
热门文章
- 电阻,电容,电感(resistor, capacitor, inductor)
- java环境变量设置 win2003,2021-03-09Win10的Java环境配置Win10下Java环境变量配置
- CentOS8.1部署Gitlab+Jenkins持续集成(CI/CD)环境之Jenkins安装(二)
- 这几款笔记本电脑性价比还不错
- 为客户带来价值-需求分析的实用方法
- 知乎热榜:做程序员攒钱10年,够一百万左右回农村存银行一个月6千利息现实吗?...
- JZOJ 4231. 寻找神格
- 动态获取鼠标在盒子里的位置
- 坚定的信念就是成功的一大半
- hive中控制窗口范围rows between的使用