C#读取Excel数据

原创 2007年10月09日 22:19:00

用OLEDB进行Excel文件数据的读取,并返回DataSet数据集。其中有几点需要注意的:

1.连接字符串中参数IMEX 的值:
0 is Export mode 1 is Import mode 2 is Linked mode (full update capabilities)
IMEX有3个值:当IMEX=2 时,EXCEL文档中同时含有字符型和数字型时,比如第C列有3个值,2个为数值型 123,1个为字符型 ABC,当导入时,
页面不报错了,但库里只显示数值型的123,而字符型的ABC则呈现为空值。当IMEX=1时,无上述情况发生,库里可正确呈现 123 和 ABC.
2.参数HDR的值:
HDR=Yes,这代表第一行是标题,不做为数据使用 ,如果用HDR=NO,则表示第一行不是标题,做为数据来使用。系统默认的是YES
3.参数Excel 8.0
对于Excel 97以上版本都用Excel 8.0
Google AdSense 会在您的网站上提供与内容相关的广告
 

 /**//// <summary>
        /// 读取Excel文件,将内容存储在DataSet中
        /// </summary>
        /// <param name="opnFileName">带路径的Excel文件名</param>
        /// <returns>DataSet</returns>
        private DataSet ExcelToDataSet(string opnFileName)
        {
            string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+opnFileName+";Extended Properties=/"Excel 8.0;HDR=YES;IMEX=1/"";
            OleDbConnection conn = new OleDbConnection(strConn);           
            string strExcel = "";
            OleDbDataAdapter myCommand = null;
            DataSet ds = new DataSet();
            strExcel = "select * from [sheet1$]";
            try
            {
                conn.Open();
                myCommand = new OleDbDataAdapter(strExcel, strConn);
                myCommand.Fill(ds,"dtSource");
                return ds;
            }
            catch (Exception ex)
            {
                MessageBox.Show("导入出错:" + ex, "错误信息");
                return ds;
            }
            finally
            {
                conn.Close();
                conn.Dispose();
            }
        }
 

ODBC文件DSN 的结构

                       ODBC文件DSN 的小秘密1. 用附件带的WORDPAD文本编辑器,  建立一后缀名为 .DSN的文件,  格式如下, 然后按文本格式存起来:注意: 格...
  • greenlea
  • greenlea
  • 2000-12-14 18:44:00
  • 972

C# 读取Excel数据

  • 2010年09月06日 09:45
  • 750KB
  • 下载

读取EXCEL数据到数据库(C#)

  • 2008年12月26日 18:28
  • 749KB
  • 下载

C#读取excel数据

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T...
  • weixin_36602742
  • weixin_36602742
  • 2017-03-10 15:22:12
  • 1543

C#读取Excel的三种方式以及比较

(1)OleDB方式 优点:将Excel直接当做数据源处理,通过SQL直接读取内容,读取速度较快。 缺点:读取数据方式不够灵活,无法直接读取某一个单元格,只有将整个Sheet页读取出来后(结果...
  • kone0611
  • kone0611
  • 2016-04-14 10:16:05
  • 955

c#.net不能完全读取Excel内容的问题

由于工作的需要读取Excel文件导入数据库,由于列的数据类型不确定,可能是数值也有可能是字符串,所以导致数据不能读取的问题,最后才发现是连接字符串的问题,正确的代码如下:private DataSet...
  • steven2006
  • steven2006
  • 2007-01-17 15:01:00
  • 2355

C#读取Excel数据两种方式性能对比

方式一:程序读取Excel数据,代码如下:                           Excel.Application m_ExcelFile = new Excel.Applicatio...
  • zhaozhi_1983
  • zhaozhi_1983
  • 2008-09-02 13:17:00
  • 3678

使用c#读取excel中的数据

可以采用读取Access的方式读取excel中的数据 首先添加System.Data.OleDb引用 using System; using System.Collections.Generic;...
  • yhrun
  • yhrun
  • 2012-06-19 09:48:59
  • 5278

c#读取excel数据到datatable中

首先需要引用命名空间 using System.IO; using System.Data.OleDb; 下面是程序代码 string fName; privat...
  • buaazx1992
  • buaazx1992
  • 2018-01-29 20:28:18
  • 107

读取Excel表格数据

一、 在工程中加入相关的Com组件 代码示例:    ExcelObj=new Excel.Application();     object missing=Type.Missing;     Ex...
  • Csharp888
  • Csharp888
  • 2010-04-10 12:33:00
  • 1243
收藏助手
不良信息举报
您举报文章:C#读取Excel数据
举报原因:
原因补充:

(最多只允许输入30个字)