GridView导出到excel

来源:互联网 发布:mac vnc连接windows 编辑:程序博客网 时间:2024/05/22 06:19

本文是asp.net  Gridview操作小积累,用得着的可以参考一下,本例子思想来源于webcast

 

前台关键代码:

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

    </asp:GridView>

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

        onclick="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);
        }

 

 

原创粉丝点击