ASP.NET页面上数据导出到Excel

来源:互联网 发布:plc编程入门pdf 编辑:程序博客网 时间:2024/05/21 22:49

页面上用GridView显示数据

导出按钮Click事件

 protected void Btn_DC_Click(object sender, EventArgs e)
    {

        string fileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString();      
        Response.Clear();
        Response.Buffer = true;
        Response.Charset = "GB2312";  //设置了类型为中文防止乱码的出现  EnableEventValidation ='false'
        Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8) + ".xls"); //定义输出文件和文件名
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); //设置输出流为简体中文
        //Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。
        Response.ContentType = "application/vnd.xls";

        System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN", true);
        System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
        System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
        orderGdView.RenderControl(oHtmlTextWriter);
        Response.Write(oStringWriter.ToString());
        Response.End();
    }

    另外还得加上

      public override void VerifyRenderingInServerForm(Control control)
    {
    }

否则程序会在这一行 orderGdView.RenderControl(oHtmlTextWriter);
报错 ,至于为什么会报错暂不清楚

 

原创粉丝点击