c#读取excel内容内容示例分享

1、Excel 需是.xls 格式
2、添加引用Microsoft.Office.Interop.Excel.dll

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.OleDb;
using Excel = Microsoft.Office.Interop.Excel;
using System.Diagnostics;

namespace ReadExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = @"D:\TransferPlant\111.xls";
            DataTable dt = ExcelToDataSet(fileName);
            if (dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    Console.WriteLine(dt.Rows[i][0].ToString());
                }
            }
        }

static public DataTable ExcelToDataSet(string filename)
        {
            string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = "+filename+";Extended Properties=Excel 8.0";
            OleDbConnection conn = new OleDbConnection(strCon);
            conn.Open();
            //返回Excel的架构,包括各个sheet表的名称,类型,创建时间和修改时间等 
            DataTable dtSheetName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });
            //包含excel中表名的字符串数组
            string[] strTableNames = new string[dtSheetName.Rows.Count];
            for (int k = 0; k < dtSheetName.Rows.Count; k++)
            {
                strTableNames[k] = dtSheetName.Rows[k]["TABLE_NAME"].ToString();
            }
            OleDbDataAdapter myCommand = null;
            DataTable dt = new DataTable();
            //从指定的表明查询数据,可先把所有表明列出来供用户选择
            string strExcel = "select * from [" + strTableNames[0] + "]";
            myCommand = new OleDbDataAdapter(strExcel, strCon);
            myCommand.Fill(dt);

return dt;
        }
    }
}

(0)

相关推荐

  • ADO.NET 读取EXCEL的实现代码((c#))

    // 连接字符串 复制代码 代码如下: // 连接字符串                     string xlsPath = Server.MapPath("~/app_data/somefile.xls"); // 绝对物理路径         string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;" +                         "Extended Properties=Exc

  • C#使用oledb读取excel表格内容到datatable的方法

    本文实例讲述了C#使用oledb读取excel表格内容到datatable的方法.分享给大家供大家参考.具体分析如下: 首先看一段实例代码 复制代码 代码如下: string strCon = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excel_path + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'"; OleDbConnection myCon

  • C#使用Ado.net读取Excel表的方法

    本文实例讲述了C#使用Ado.net读取Excel表的方法.分享给大家供大家参考.具体分析如下: 微软NET提供了一个交互的方法,通过使用ADO.NET与Microsoft Office程序.可以使用内置的OLEDB来访问Excel的XLS表格.下面的例子演示了如何在C#编程读取Excel工作表.需要引用System.Data.OleDb库 using System; using System.Data.OleDb; namespace ConsoleApplication1 { class P

  • c#读取excel方法实例分析

    本文实例讲述了c#读取excel方法.分享给大家供大家参考.具体分析如下: Provider根据实际EXCEL的版本来设置,推荐使用ACE接口来读取.需要Access database Engine. 注意修改注册表以下两项的值为0.否则导入EXCEL当单元格内字符长度超过255会发生截断现象!!! HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\AccessConnectivity Engine\Engines\Excel\TypeGuess

  • ASP.NET(C#)读取Excel的文件内容

    .xls格式       Office2003及以下版本 .xlsx格式 Office2007 及以上版本 .csv格式       以逗号分隔的字符串文本(可以将上述两种文件类型另存为此格式) 读取前两种格式和读取后一种格式会用两种不同的方法. 下面看程序:页面前台: 复制代码 代码如下: <div>       <%-- 文件上传控件  用于将要读取的文件上传 并通过此控件获取文件的信息--%>      <asp:FileUpload ID="fileSele

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

    (1)OleDB方式 优点:将Excel直接当做数据源处理,通过SQL直接读取内容,读取速度较快. 缺点:读取数据方式不够灵活,无法直接读取某一个单元格,只有将整个Sheet页读取出来后(结果为Datatable)再在Datatable中根据行列数来获取指定的值. 当Excel数据量很大时.会非常占用内存,当内存不够时会抛出内存溢出的异常. 读取代码如下: public DataTable GetExcelTableByOleDB(string strExcelPath, string tabl

  • ASP.NET(C#) 读取EXCEL另加解决日期问题的方法分享

    使用OLEDB可以对excel文件进行读取,我们只要把该excel文件作为数据源即可. 一 在D盘创建excel文件test.xls: 二 将工作表Sheet1的内容读取到DataSet 复制代码 代码如下: string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/test.xls;"+   "Extended Properties='Excel 8.0'"; DataSet ds = ne

  • C#窗体读取EXCEL并存入SQL数据库的方法

    本文实例讲述了C#窗体读取EXCEL并存入SQL数据库的方法.分享给大家供大家参考.具体实现方法如下: windows窗体上放了一个Textbox1,2个按钮button1和button2~按button1选择excel文件~按button2进行相关处理 复制代码 代码如下: private  void button1_click(object sendeer,EventArgs e) {  OpenFileDialog  openFiledialog1=new OpenFileDialog()

  • C#利用Openxml读取Excel数据实例

    本文实例讲述了C#利用Openxml读取Excel数据的方法,分享给大家供大家参考.具体分析如下: 这里有些问题,如果当Cell 里面是 日期和浮点型的话,对应的Cell.DataType==Null,对应的时间会转换为一个浮点型,对于这块可以通过DateTime.FromOADate(double d)转换为时间. 可是缺点的地方就是,如果Cell.DataType ==NULL, 根本无法确认这个数据到底是 浮点型还是[被转换为了日期的浮点数].查阅了很多国外资料,的确国外博客有一部分都反映

  • C#读取Excel并转化成XML的方法

    本文实例讲述了C#读取Excel并转化成Xml的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: XmlDocument excelData = new XmlDocument(); DataSet excelTableDataSet = new DataSet(); StreamReader excelContent = new StreamReader(excelFilePath, System.Text.Encoding.Default); string stringC

随机推荐