C#读取Excel文档

上面分别是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;
        }
    }
}
时间: 2024-11-05 21:46:39

C#读取Excel文档的相关文章

PHP读取excel文档

PHP读取excel文档 项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel. PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader.但是可惜的是不能够支持Excel 2007的格式(.xlsx). PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel 2007格式(.xlsx)文件的

C#操作Excel(2)-- 打开-读取Excel文档

由于要为某软件实现导出Excel功能,故有此文. 本文的开发环境是Visual Studio 2010 ,C#, Excel 2007. 新建C#工程后打开Solution Explorer,可以看到如下图片: 右键点击Reference->Add References->Browse 选择三个DLL文件(点此下载): Interop.Excel.dll Interop.Microsoft.Office.Core.dll Interop.VBIDE.dll 添加上述三个引用后,Referenc

Java使用poi包读取Excel文档

项目需要解析Excel文档获取数据,就在网上找了一些资料,结合自己这次使用,写下心得: 1.maven项目需加入如下依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.10-FINAL</version> </dependency> <dependency> <gr

【转】ExcelHelper类,用npoi读取Excel文档

//------------------------------------------------------------------------------------- // All Rights Reserved , Copyright (C) 2013 , DZD , Ltd . //------------------------------------------------------------------------------------- using System; us

java读取Excel文档插入mysql

/** * 读取excel插入myslq */package com.excel; import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStateme

php读取excel文档内容(转载)

入到数据库的需要,php-excel-reader可以很轻松的使用它读取excel文件,本文将详细介绍,需要了解的朋友可以参考下 php开发中肯定会遇到将excel文件内容导入到数据库的需要,php-excel-reader是一个读取excel的类,可以很轻松的使用它读取excel文件非常方便. php-excel-reader下载地址: http://www.jb51.net/codes/67223.html 我下载的是php-excel-reader-2.21版本,使用的时候还遇到几个小问题

利用xlrd模块实现Python读取Excel文档

# -*- coding: cp936 -*- #python读取excel import xlrd def main(): xls=xlrd.open_workbook("d:\\11.xls") try: mysheet=xls.sheet_by_name("Sheet1")#找到名为Sheet1的工作表.区分大小写 except: print("没有此工作表") return print("共有 %d 行, %d 列."

POI 读取Excel文档中的数据——兼容Excel2003和Excel2007

Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. HSSF - 提供读写Microsoft Excel格式档案的功能. XSSF - 提供读写Microsoft OOXML格式档案的功能.  以下是项目工程结构图: 使用POI解析EXCEL文件需要用到POI相关的jar包,这些jar包可以在apache官网上去下载:http://poi.apache.org/download.html: 这里我使

Python基础--实战一:用xlrd模块读取excel文档

一.文件格式 二.第一种方式:列表方式以行为单位读取 Python格式显示: 代码: import osimport xlrd #导入xlrd模块,可在线安装 def Read_Excel_Case(path): work=xlrd.open_workbook(path) #打开文件 sheet=work.sheet_by_index(0) # 用下标的方式选择要读取文件中的工作表,也可用工作表的名称 sheet=work.sheet_by_name('Sheet1') Case_list=[]