C#读取Excel的三种方式以及比较
(1)OleDB方式
优点:将Excel直接当做数据源处理,通过SQL直接读取内容,读取速度较快。
缺点:读取数据方式不够灵活,无法直接读取某一个单元格,只有将整个Sheet页读取出来后(结果为Datatable)再在Datatable中根据行列数来获取指定的值。
当Excel数据量很大时。会非常占用内存,当内存不够时会抛出内存溢出的异常。
读取代码如下:
string tableName)
2: {
try
4: {
new DataTable();
//数据表
new DataSet();
//获取文件扩展名
string strExtension = System.IO.Path.GetExtension(strExcelPath);
string strFileName = System.IO.Path.GetFileName(strExcelPath);
//Excel的连接
null;
switch (strExtension)
14: {
:
);
break;
:
);
break;
default:
null;
break;
24: }
null)
26: {
null;
28: }
29: objConn.Open();
//获取Excel中所有Sheet表的信息
//System.Data.DataTable schemaTable = objConn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
//获取Excel的第一个Sheet表名
//string tableName = schemaTable.Rows[0][2].ToString().Trim();
;
//获取Excel指定Sheet表中的信息
new OleDbCommand(strSql, objConn);
new OleDbDataAdapter(strSql, objConn);
//填充数据
39: objConn.Close();
//dtExcel即为excel文件中指定表中存储的信息
41: dtExcel = ds.Tables[tableName];
return dtExcel;
43: }
catch
45: {
null;
47: }
48: }
- 上一篇 »11 CSS的三种引入方式和基本选择器
- 下一篇 »CSS的三种引入方式