C# 读取Excel边学边用

共有两种方法可以读取Excel文件

 

1. OleDB

(1)连接字符串

    对于xls:string connectString =
@" Provider=Microsoft.Jet.OLEDB.4.0;" +
@" Data Source=" + fileName + ";" +
@" Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"

其中HDR为Yes|No,表示第一行是否是标题,IMEX表示数据是不是混排的,叫Intermixed。这样读取时候直接按Text读,不自行根据第一列的数据属性瞎猜。否则,如果第一行是数字,会默认以后这一列全是数字,如果不是数字呢,就给个空值。

     对于xlsx:string connectString =
@" Provider=Microsoft.ACE.OLEDB.12.0;" +
@" Data Source=" + fileName + ";" +
@" Extended Properties'Excel 12.0;HDR=Yes;IMEX=1'" 

 

(2)连接步骤

OleDbConnection conn = new OleDbConnection(connectString);

conn.Open();

string cmdText = "select * from [Sheet1$]";
OleDbCommand comm = new OleDbCommand(cmdText, conn);

OleDbDataAdapter da = new OleDbDataAdapter(comm);

DataSet allData = new DataSet();
da.Fill(allData);

conn.Close();

 

(3)如何获得Sheet名称

DataTable ExcelSheets = ExcelConnection.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });

 

2. Excel类

// 以后用到了再补满

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值