在网上查了一下相关的帖子,这里我也总结一下:
C#读取EXCEL有三种经典的方法:分别是:
1、采用OleDB读取EXCEL文件
2、引用的com组件:Microsoft.Office.Interop.Excel.dll 读取EXCEL文件
3、将EXCEL文件转化成CSV(逗号分隔)的文件,用文件流读取(等价就是读取一个txt文本文件)。
方法一:OLEDB方式
优点:读取方式简单、读取速度快
缺点:除了读取过程不太灵活之外,这种读取方式还有个弊端就是,当Excel数据量很大时。会非常占用内存,当内存不够时会抛出内存溢出的异常。不过一般情况下还是非常不错的!
1、定义连接字符串:
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Exce文件路径及名字+ ";" + "Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
2、定义连接对象
OleDbConnection conn = new OleDbConnection(strConn);
3、打开连接
conn.Open();
4、定义查询语句
string strExcel = "select * from [" + Excel工作表的名称+ "]";
5、定义OleDbDataAdapter
OleDbDataAdapter myCommand = new OleDbDataAdapter(strExcel, strConn);
6、定义DataSet
DataSet ds = new DataSet();
7、读取数据填充到Dataset中
myCommand.Fill(ds, "table1");
方法二:Appliction对象方式
参考
https://blog.csdn.net/dream_follower/article/details/70339849
https://blog.csdn.net/iamliangyuhui/article/details/5775838