GridView導出到excel

本文是asp.net  Gridview操作小積累,用得着的可以參考一下,本例子思想來源於webcast

 

前臺關鍵代碼:

<asp:GridView ID="GridView1" runat="server">

    </asp:GridView>

    <asp:Button ID="butExport" runat="server" Text="Export" 

        οnclick="butExport_Click" />

 

後臺關鍵代碼:

protected void butExport_Click(object sender, EventArgs e)
        {
            Response.Clear();//清除緩衝區所有內容,防止影響導入到excel的數據
            Response.Buffer = true; //response緩存
            Response.Charset = "GB2312"; //設置輸出流字符集
            Response.AppendHeader("Content-Disposition","attachment;filename="+@"d:/person.xls"); //設置excel存放路徑
            //如果設置GetEncoding(“GB2312”)可能會出現亂碼問題 
            Response.ContentEncoding = System.Text.Encoding.UTF8;
            //設置爲excel文件輸出
            Response.ContentType = "application/ms-excel";
            System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter oHtmlWriter = new HtmlTextWriter(oStringWriter);
            this.GridView1.RenderControl(oHtmlWriter);
            Response.Output.Write(oStringWriter.ToString());
            Response.Flush();
            Response.End();
        }
        //下面類必須重寫,否則運行時會報錯
        public override void VerifyRenderingInServerForm(Control control)
        {
            //base.VerifyRenderingInServerForm(control);
        }

 

 

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