asp.net頁面中若何獲得Excel表的內容。本站提示廣大學習愛好者:(asp.net頁面中若何獲得Excel表的內容)文章只能為提供參考,不一定能成為您想要的結果。以下是asp.net頁面中若何獲得Excel表的內容正文
asp.net頁面中若何獲得Excel表的內容,詳細內容引見以下所示:
起首援用組件和定名空間
using Microsoft.Office.Interop.Excel; using System.Data.OleDb;
然後把excel上傳到指定途徑
上傳文件辦法省略
最初把上傳的excel釀成Dataset (復制上面的辦法便可以用了)
public DataSet seachExcel(string str) //參數為excel的途徑 { OleDbDataAdapter da = new OleDbDataAdapter(); DataSet ds = new DataSet(); DataTable dt = new DataTable(); string NameTable = ""; string ConText = ""; try { //獲得Excel途徑 FileInfo info = new FileInfo(str); //獲得文件的擴大名 string fileExt = info.Extension; //斷定用哪一種銜接方法 if (fileExt .ToLower() ==".xls") { ConText = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + str + ";Extended Properties='excel 8.0;hdr=no;IMEX=1';Persist Security Info=false"; } else if (fileExt.ToLower() == ".xlsx") { ConText = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + str + ";Extended Properties='excel 12.0 Xml;hdr=no;IMEX=1';Persist Security Info=False"; } //銜接excel OleDbConnection conn = new OleDbConnection(ConText); //翻開excel conn.Open(); dt=conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,null ); if(dt!=null && dt.Rows .Count >0) { //獲得sheet1表單的表名 NameTable = dt.Rows[0]["TABLE_NAME"].ToString(); //獲得sheet2表單的表名 //NameTable = dt.Rows[1]["TABLE_NAME"].ToString(); } string sql = "select * from [" + NameTable + "]"; da = new OleDbDataAdapter(sql, conn); try { da.Fill(ds,NameTable); //把數據填充到Dataset } catch { } conn.Close(); } catch { } return ds; //反回Dataset }
asp.net讀取excel表格數據的辦法
其實讀取Excel表格中的數據和讀取數據庫中的數據長短常相似的,由於在某種水平上Excel表格可以算作是一張一張的數據表。其兩者的重要差別在於所應用的數據引擎紛歧樣。
在本文的法式中,經由過程以下代碼完成讀取Excel表格數據,詳細以下:
string strDataPathPhy = "c://1.xls"; string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " + strDataPathPhy + ";Extended Properties=Excel 8.0"; OleDbConnection myConn = new OleDbConnection(strCon); string strCom = " SELECT * FROM [Sheet1$]"; myConn.Open(); OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn); DataTable dtData = new DataTable(); myCommand.Fill(dtData); myConn.Close();
因為可以把Excel看左一個數據庫,外面的任務表便可以看左每張數據庫表,所以也能夠對搜刮成果停止挑選,例如:
strCom = " SELECT * FROM [Sheet1$] WHERE column1 <> '' ";
如許dtData外面的數據就是[Sheet1$]表中column1不為空的全體數據了
以上就是本文引見asp.net頁面中若何獲得Excel表的內容,願望對年夜家有所贊助