1.用APP直接读取Excel文件
这种方法原理是用APP打开EXCEL文件,操作单元格读取数据,快速比较慢,基本不采用这种方式。
2.用APP把Excel文件转成Txt文件,再读取Txt文件
过程:
a. Microsoft.Office.Interop.Excel.Worksheet SAVE 方法转成TXT文件
b.如果单元格内有换行,用要把这些换行符替换掉,保证TXT文件行数与Excel行数一致。
c.FileStream 逐行读取TXT文件
基本采用这种方式
3.用OLEDB把Excel当数据源
Excel文件版本不同驱动也不同,可以通过上传文件扩展名判断
2003:strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
2007:strConn = "Provider= Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
OleDbConnection OleConn = new OleDbConnection(strConn);
OleConn.Open();
String sql = "SELECT * FROM ["+sheetName+"$]";//可是更改Sheet名称,比如sheet2,等等
OleDbDataAdapter OleDaExcel = new OleDbDataAdapter(sql, OleConn);
DataSet OleDsExcle = new DataSet();
OleDaExcel.Fill(OleDsExcle, sheetName);
OleConn.Close();
缺点:环境条件比较复杂,在服务器上经常不稳定,报驱动相关错误。