ASP.net中導出Excel報表

在asp.net中一般有3種方式可以導出excel報表,一是在後臺創建Excel文件,然後在前臺開啟;二是在前臺利用activex創建excel,直接在前臺用script寫入;三是將數據寫入Table中,然後將Table以Excel的格式輸出。前兩種方式這裡就不多說了,主要說說第三種模式。 1.先創建一個HtmlTable,然後添加HtmlTableRow,依照Excel的格式設置HtmlTable的格式。2.在HtmlTable中填入數據。可以將Excel的公式填入Cell中,在輸出時會自動計算。3.將HtmlTable以Excel的格式輸出到頁面。

輸出Excel格式的語法參考:

//用IE打開Excel。速度較快

Page.Response.Write("<html><head><meta   content='text/html;   charset=utf-8'   http-epuiv='content-type' ></head><body>");   //如果要直接用Excel打開,則將上面的語句改成下面的,要注意的是,當Excel的欄位太多時,如有中文則可能會出現亂碼。 

//Page.Response.AppendHeader("Content-Disposition","attachment;filename=yourFileName.xls");

//====================================

   Page.Response.ContentType="application/vnd.ms-excel";//image/JPEG;text/HTML;image/GIF;vnd.ms-excel    Page.Response.Charset ="utf-8"; //windows-1252     Page.Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");      Page.Page.EnableViewState = false; //Turnoff the view state.

   System.IO.StringWriter tw = new System.IO.StringWriter();    System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);

   //BuilderHtmlTableClicking();

   HtmlTable1.RenderControl(hw);    Page.Response.Write(tw.ToString()); //Writethe HTML back to the browser.    Page.Response.End();

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章