溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ASP.NET中怎么利用DataSet將數(shù)據(jù)導(dǎo)出到Excel文件

發(fā)布時(shí)間:2021-07-16 11:54:27 來源:億速云 閱讀:104 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章為大家展示了ASP.NET中怎么利用DataSet將數(shù)據(jù)導(dǎo)出到Excel文件,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

 /讀取臨時(shí)文件
   GYYW.DA.Common.Base_SqlDataBase daBZDM = new GYYW.DA.Common.Base_SqlDataBase();
   DataSet dsBZDM = daBZDM.GetDataSetBySql("select QCDM,MC,GG from WG_BZDM where QCDM like '02%'");
   //同時(shí)將虛擬目錄下的Data作為臨時(shí)文件目錄。
   string urlPath = HttpContext.Current.Request.ApplicationPath + "/Data/";
   string physicPath = HttpContext.Current.Server.MapPath(urlPath);
   //string fileName = Guid.NewGuid() + ".Xls";
   string fileName ="DownLoad.Xls";
   string connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + physicPath + fileName +";Extended Properties=Excel 8.0;";  
   OleDbConnection objConn = new OleDbConnection(connString);
   OleDbCommand objCmd = new OleDbCommand();
   objCmd.Connection = objConn;
   objCmd.Connection.Open();   
   //建立表結(jié)構(gòu)
   objCmd.CommandText = @"CREATE TABLE Sheet1(器材代碼 varchar,名稱 varchar, 規(guī)格 varchar)";
   objCmd.ExecuteNonQuery();
   //建立插入動(dòng)作的Command  
   objCmd.CommandText = "INSERT INTO Sheet1(器材代碼, 名稱,規(guī)格) VALUES (@QCDM, @MC, @GG)";  
   objCmd.Parameters.Clear();
      objCmd.Parameters.Add(new OleDbParameter("@QCDM", OleDbType.VarChar));
   objCmd.Parameters.Add(new OleDbParameter("@MC", OleDbType.VarChar));
   objCmd.Parameters.Add(new OleDbParameter("@GG",OleDbType.VarChar));    
   //遍歷DataSet將數(shù)據(jù)插入新建的Excel文件中
   foreach (DataRow row in dsBZDM.Tables[0].Rows)
   {  
    for (int i=0; i<objCmd.Parameters.Count; i++)
    {
     objCmd.Parameters[i].Value = row[i];
    }
    objCmd.ExecuteNonQuery();
   }
   objCmd.Connection.Close();
      //提供下載
   //清除臨時(shí)文件
   HttpResponse response = HttpContext.Current.Response;
   response.Clear();
   //為輸出作準(zhǔn)備
   response.WriteFile(urlPath + fileName);
   string httpHeader="attachment;filename=KCMX.Xls";
   response.AppendHeader("Content-Disposition", httpHeader);
   response.Flush();
   //輸出完畢后清除臨時(shí)文件
   string strSaveDir = "../Data/";
   string strFile = Server.MapPath(strSaveDir + fileName).ToString();
   //string sss = urlPath + fileName;
   System.IO.File.Delete(strFile);//刪除臨時(shí)文件
   response.End();

上述內(nèi)容就是ASP.NET中怎么利用DataSet將數(shù)據(jù)導(dǎo)出到Excel文件,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI