C# ASP.net 将GridView中的数据导出到Excel中的代码

在页面中添加导出按钮,按钮中的代码如下:

protected void Button2_Click(object sender, EventArgs e)
       {
           Export("application/ms-excel", "EXCEL默认文件名.xls");
       }

       private void Export(string FileType, string FileName)
       {
           Response.Charset = "GB2312";
           Response.ContentEncoding = System.Text.Encoding.UTF8; //网上的资料这里是UTF7,导出到Excel文件里是乱码
           Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
           Response.ContentType = FileType;
           this.EnableViewState = false;
           StringWriter tw = new StringWriter();
           HtmlTextWriter hw = new HtmlTextWriter(tw);
           GridView1.RenderControl(hw);
           Response.Write(tw.ToString());
           Response.End();
       }

//如果没有下面方法会报错类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内
       public override void VerifyRenderingInServerForm(Control control)
       {
       }

(以上代码转自网上,经测试可行)

posted @ 2009-08-27 13:52  斑点海豚---寂静的港湾  阅读(350)  评论(0编辑  收藏  举报