C# 使用 OleDbConnection 连接读取Excel的方法
Connection类有四种:SqlConnection,OleDbConnection,OdbcConnection和OracleConnection。
(1)Sqlconnetcion类的对象连接是SQL Server数据库;
(2)OracleConnection类的对象连接Oracle数据库;
(3)OleDbConneetion连接支持OLEDB的数据库,如Access;
(4)OdbcConnection类的对象连接支持ODBC的数据库。
与数据库的所有通讯都是通过Connection对象来完成的。
OleDbConnection类的常用属性及其说明
属性 说明
ConnectionString 获取或设置用于打开数c#教程据库的字符串
ConnectionTimeOut 获取在尝试建立连接时终止尝试并生成错误之前所等待的时间
Database 获取当前数据库或连接打开后要使用的数据库名称
DataSource 获取数据源的服务器名或文件名
Provider 获取在连接字符串的“Provider = ” 子句中指定的OLEDB提供程序的名称
State 获取连接的当前状态
OleDbConnection类的常用方法如下表所示:
Open 使用ConnectionString所指定的属性设置打开数据库连接
Close 关闭与数据库的连接,这是关闭任何打开连接的首选方法
CreateCommand 创建并返回一个与OleDbConnection关联的OleDbCommand对象
ChangeDatabase 为打开的OleDbConnection更改当前数据库
下面用c#写了个控制台应用实现使用 OleDbConnection 读取Excel(支持.xls与.xlsx文件)
class Program{//函数用来读取一个excel文件到DataSet集中 public static DataSet ExcelToDataSet(string filename, string tableName) {//获取文件扩展名string strExtension = System.IO.Path.GetExtension(filename);OleDbConnection myConn = null;switch (strExtension){case ".xls":myConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename + ";" + "Extended Properties=\"Excel 8.0;HDR=yes;IMEX=1;\"");break;case ".xlsx":myConn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filename + ";" + "Extended Properties=\"Excel 12.0;HDR=yes;IMEX=1;\"");//此连接可以操作.xls与.xlsx文件 (支持Excel2003 和 Excel2007 的连接字符串) //"HDR=yes;"是说Excel文件的第一行是列名而不是数,"HDR=No;"正好与前面的相反。"IMEX=1 "如果列中的数据类型不一致,使用"IMEX=1"可必免数据类型冲突。 break;default:myConn = null;break;}if (myConn == null){return null;}string strCom = " SELECT * FROM ["+ tableName + "$]"; myConn.Open();//获取Excel指定Sheet表中的信息OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);DataSet ds;ds = new DataSet();myCommand.Fill(ds, tableName);myConn.Close();return ds;}static void Main(string[] args){var tablename = "sheet1";//括号中为表格地址 DataSet ds = ExcelToDataSet("D:\\get.xls", tablename); for (int i = 0; i < ds.Tables[0].Rows.Count; i++){string str = ds.Tables[tablename].Rows[i]["价格"].ToString(); //Rows[i]["col1"]表示i行"col1"字段 Console.WriteLine(str);}Console.WriteLine("正确执行...");Console.ReadKey();}}
class Program{//函数用来读取一个excel文件到DataSet集中 public static DataSet ExcelToDataSet(string filename, string tableName) {//获取文件扩展名string strExtension = System.IO.Path.GetExtension(filename);OleDbConnection myConn = null;switch (strExtension){case ".xls":myConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename + ";" + "Extended Properties=\"Excel 8.0;HDR=yes;IMEX=1;\"");break;case ".xlsx":myConn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filename + ";" + "Extended Properties=\"Excel 12.0;HDR=yes;IMEX=1;\"");//此连接可以操作.xls与.xlsx文件 (支持Excel2003 和 Excel2007 的连接字符串) //"HDR=yes;"是说Excel文件的第一行是列名而不是数,"HDR=No;"正好与前面的相反。"IMEX=1 "如果列中的数据类型不一致,使用"IMEX=1"可必免数据类型冲突。 break;default:myConn = null;break;}if (myConn == null){return null;}string strCom = " SELECT * FROM ["+ tableName + "$]"; myConn.Open();//获取Excel指定Sheet表中的信息OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);DataSet ds;ds = new DataSet();myCommand.Fill(ds, tableName);myConn.Close();return ds;}static void Main(string[] args){var tablename = "sheet1";//括号中为表格地址 DataSet ds = ExcelToDataSet("D:\\get.xls", tablename); for (int i = 0; i < ds.Tables[0].Rows.Count; i++){string str = ds.Tables[tablename].Rows[i]["价格"].ToString(); //Rows[i]["col1"]表示i行"col1"字段 Console.WriteLine(str);}Console.WriteLine("正确执行...");Console.ReadKey();}}
记得在D盘先新建excel文件,如下
到此这篇关于C# 使用 OleDbConnection 连接读取Excel的方法的文章就介绍到这了,更多相关C# 读取Excel内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持
C# 使用 OleDbConnection 连接读取Excel的方法相关推荐
- c# oldb连接_如何使用C#中的OleDbConnection 连接读取Excel?
如何使用C#中的OleDbConnection 连接读取Excel? 发布时间:2020-07-11 15:12:06 来源:亿速云 阅读:114 这篇文章将为大家详细讲解有关如何使用C#中的OleD ...
- c# oldb连接_C#如何使用 OleDbConnection 连接读取Excel?(代码实例)
本篇文章给大家带来的内容是C#如何使用 OleDbConnection 连接读取Excel?(代码实例).有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所助./// /// 读取Excel中 ...
- c# oldb连接_C#使用 OleDbConnection 连接读取Excel
/// ///读取Excel中数据/// /// /// /// public static DataTable GetExcelTableByOleDB(string strExcelPath, s ...
- C#使用 OleDbConnection 连接读取Excel
/// /// 读取Excel中数据 /// /// /// /// public static DataTable GetExcelTableByOleDB(string strExcelPath, ...
- C# 使用 OleDbConnection 连接读取Excel
Connection类有四种:SqlConnection,OleDbConnection,OdbcConnection和OracleConnection. (1)Sqlconnetcion类的对象连接 ...
- R语言:64位操作系统读取excel文件方法总结
首先尝试的是RODBC,不过过程相当不顺利 我电脑上安装的是office 2003,ODBC数据源里面找不到excel的驱动程序 原因是office是32为版本,安装的驱动程序无法在64位的win7上 ...
- python3读取excel方法封装_Python读取Excel的方法封装
今天需要从一个Excel文档(.xls)中导数据到数据库的某表,开始是手工一行行输的.后来想不能一直这样,就用Python写了下面的代码,可以很方便应对这种场景.比如利用我封装的这些方法可以很方便地生 ...
- Labview读取Excel文件方法
Labview读取Excel文件方法 新建报表->获取数据->索引数组
- C#读取Excel的方法
方法一:采用OleDB读取EXCEL文件 把EXCEL文件当做一个数据源来进行数据的读取操作,实例如下: 对于EXCEL中的表即sheet([sheet1$])如果不是固定的可以使用下面的方法得到 另 ...
最新文章
- ncnn-mobile
- Java之基础(1) - 编程中“为了性能”尽量要做到的一些地方
- 计算机语言import,python中import指的是什么意思
- 我的技术回顾那些与ABP框架有关的故事-2017年
- Spring Cloud 服务注册与发现 [ eureka ]
- VMware 披露严重0day,影响Workspace One 的多个组件
- python判断互质_整数判断是否互质并求逆元的 python 实现
- 子网掩码、子网划分详解
- 20145306 信息安全系统设计基础 第五周博客总结
- java jimi_Java开源工具Jimi处理图片大小及格式转换
- 函数周期表丨筛选丨行值丨EARLIER与EARLIEST
- 弘玑Cyclone代表中国RPA进入Gartner魔力象限:迄今国内厂商最佳排名,迈入全球一线阵营
- 名帖196 米芾 行书《诉衷情》
- buct编译原理个人作业
- 【正点原子FPGA连载】 第二十八章OV5640 DP显示实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南
- 清理android桌面
- OpenHarmony 开发者大会2023 活动开始报名啦!抢票中ing
- gofmt和goimports的缩进
- Android将so库封装到jar包中并加载其中的so库
- java和C#中 定义变量,加一个小括号是什么意思。。。