asp.net gridview 导出到excl

复制代码
  public void Export_EXCL(GridView GridView1)
    {
        /**
         * 如果打印全部数据,则加上注视的代码
         * */
        //GVExport.AllowPaging = false;
        //GVExport.AllowSorting = false;
        //GVExport.DataSource = null;
        //GVExport.DataBind();
        DateTime dt = DateTime.Now;
        Response.ClearContent();
        Response.Buffer = true;
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
        string filename = "export_" + dt.ToString("yyyyMMddHHmm") + ".xls";
        string[] browsers = { "Firefox", "AppleMAC-Safari", "Opera" }; //针对FF、Safari、Opera 设置编码
        string browser = Request.Browser.Browser;
        string attachment = string.Empty;
        if (Array.IndexOf<string>(browsers, browser) != -1)
        {
            attachment = "attachment; filename=" + filename;
        }
        else
        {
            attachment = "attachment; filename=" + Server.UrlEncode(filename);
        }
        Response.AddHeader("content-disposition", attachment);
        Response.Write("<meta http-equiv=Content-Type content=text/html;charset=utf-8>");
        Response.ContentType = "application/ms-excel";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        GridView1.RenderControl(htw);
        Response.Output.Write(sw.ToString());
        Response.Flush();
        Response.End();
    }

    public override void VerifyRenderingInServerForm(Control control)
    {

    }
View Code
复制代码

 

posted @   甜菜波波  阅读(103)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示