国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

asp.net頁面中如何獲取Excel表的內容

2020-01-24 01:31:50
字體:
來源:轉載
供稿:網友

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表的內容,希望對大家有所幫助

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 都昌县| 铜鼓县| 游戏| 漳浦县| 周至县| 延川县| 南部县| 辉南县| 六枝特区| 大埔区| 普陀区| 隆化县| 贡觉县| 宜君县| 吉隆县| 辽阳县| 龙井市| 新邵县| 静乐县| 孟村| 龙泉市| 南开区| 铜梁县| 满洲里市| 明光市| 海南省| 永善县| 乌拉特后旗| 田东县| 会昌县| 中方县| 静宁县| 广西| 庄河市| 教育| 绥阳县| 北安市| 通许县| 渭源县| 台东县| 信阳市|