c#使用oledb读取excel

复制代码
 //.xlsx表格的连接字符串。pathName:带路径的Excel文件名D:\a_云数\反射1\ConsoleApp1\ExcelManage\测试.xlsx
            string pathName = "测试.xlsx";
            string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + pathName + ";Extended Properties='Excel 12.0;HDR=No;IMEX=1;'"; 
            //1.使用数据源与excel进行连接
            OleDbConnection connection = new OleDbConnection(strConn);
            //2.打开连接
            connection.Open();
            //3.查询 
            string sql = "select *  from [Sheet1$]";//查询命令,从sheet1中查询数据。
            //3.1查询适配器,OleDbDataAdapter返回的是datatable类型的数据。
            OleDbDataAdapter adapter = new OleDbDataAdapter(sql,connection);
            //4.使用dataset存放DataTable数据,就是说可以存放很多张表格。
            DataSet dataSet = new DataSet();
            //4.1将数据存放到dataset中。
            adapter.Fill(dataSet);
            //查询完毕,关闭连接
            connection.Close();
            //取出dataSet中所有表格的数据,返回类型是DataTableCollection
            DataTableCollection tableCollection = dataSet.Tables;
            //目前里面只有一个表格,所以直接取索引0
            DataTable dataTable = tableCollection[0];
            //取出所有的行
            DataRowCollection rowCollection = dataTable.Rows;
            //取出前3列的数据
            foreach (DataRow row in rowCollection)
            {
                for(int i=0;i<3;i++)
                {
                    Console.Write(row[i]+" ");
                }
                Console.WriteLine(); 
            } 
            Console.ReadKey(); 
复制代码

 

posted @   安静点--  阅读(857)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示