码迷,mamicode.com
首页 > Windows程序 > 详细

C#读取Excel文档

时间:2016-04-22 14:46:44      阅读:321      评论:0      收藏:0      [点我收藏+]

标签:

技术分享

技术分享

上面分别是Excel文档的内容和读取结果;

奉上C#源代码:

using System;
using System.Data;
using System.Data.OleDb;

namespace ReadExcel
{
    class ReadExcel
    {
        static void Main()
        {
            DataSet dataset = ReadExcel.ExcelToDS(@"D:\test1.xls");
            DataTable table = dataset.Tables["table1"];
            for (int i = 0; i < table.Rows.Count; i++)
            {
                DataRow row = table.Rows[i];
                /* 默认会把Excel的第一行作为列名,当HDR=NO时则以序号取数,或者以F1,F2,F3……的方式取数
                 * 当HDR=NO时则以序号取数,或者以F1,F2,F3……的方式取数
                 * 例如:row[0],row[1],row[2]或者row[F1],row[F2],row[F3]
                 */
                string country = Convert.ToString(row["国家"]);
                string nationality = Convert.ToString(row["民族"]);
                Console.WriteLine(country + "\t" + nationality);
            }
            Console.ReadKey();
        }
        public static DataSet ExcelToDS(string Path)
        {
            string filename = System.IO.Path.GetFileName(Path);//文件名
            string extension = System.IO.Path.GetExtension(Path);//扩展名 “.xlsx”
            string strConn = string.Empty;
            if (extension == "xls")
            {
                //默认以Excel文档的第一行作为列名,如果不需要则设置:HDR=NO
                //strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended Properties=‘Excel 8.0;HDR=NO‘";
                strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended Properties=Excel 8.0;";
            }
            else
            {
                //strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + Path + ";Extended Properties=‘Excel 12.0; HDR=NO; IMEX=1‘";
                strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + Path + ";Extended Properties=‘Excel 12.0; IMEX=1‘";
            }
            OleDbConnection conn = new OleDbConnection(strConn);
            conn.Open();
            string strExcel = "";
            OleDbDataAdapter myCommand = null;
            DataSet ds = null;
            strExcel = "select * from [sheet1$]";
            myCommand = new OleDbDataAdapter(strExcel, strConn);
            ds = new DataSet();
            myCommand.Fill(ds, "table1");
            return ds;
        }
    }
}

 

C#读取Excel文档

标签:

原文地址:http://www.cnblogs.com/yangyong-yy/p/5421224.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!