ASP.NET用DataSet匯出到Excel的方法

NO IMAGE
1 Star2 Stars3 Stars4 Stars5 Stars 給文章打分!
Loading...

複製程式碼 程式碼如下:
 /讀取臨時檔案

   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%'”);

   //同時將虛擬目錄下的Data作為臨時檔案目錄。

   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();
  

   //建立表結構

   objCmd.CommandText = @”CREATE TABLE Sheet1(器材程式碼 varchar,名稱 varchar, 規格 varchar)”;

   objCmd.ExecuteNonQuery();

   //建立插入動作的Command
 

   objCmd.CommandText = “INSERT INTO Sheet1(器材程式碼, 名稱,規格) 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將資料插入新建的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();

  
   //提供下載

   //清除臨時檔案

   HttpResponse response = HttpContext.Current.Response;

   response.Clear();

   //為輸出作準備

   response.WriteFile(urlPath fileName);

   string httpHeader=”attachment;filename=KCMX.Xls”;

   response.AppendHeader(“Content-Disposition”, httpHeader);

   response.Flush();

   //輸出完畢後清除臨時檔案

   string strSaveDir = “../Data/”;

   string strFile = Server.MapPath(strSaveDir fileName).ToString();

   //string sss = urlPath fileName;

   System.IO.File.Delete(strFile);//刪除臨時檔案

   response.End();

 

您可能感興趣的文章:

ASP.NET中DataTable與DataSet之間的轉換示例ASP.NET 繫結DataSet中的多個表asp.net DataSet進行排序asp.net下DataSet.WriteXml(String)與(Stream)的區別ADO.Net 型別化DataSet的簡單介紹asp.net下用DataSet生成XML的問題詳細說明asp.net中datareader 和 dataset 的區別ASP.NET中實現把Json資料轉換為ADO.NET DataSet物件asp.net如何將DataSet轉換成josn並輸出.NET中如何將文字檔案的內容儲存到DataSet

相關文章

前端開發 最新文章