zoukankan      html  css  js  c++  java
  • Asp.NET中把DataTable导出为Excel ,中文有乱码现象解决办法

          //DataTable为要导出的数据表

           DataGrid dg = new DataGrid();
                    dg.DataSource = DataTable;
                    dg.DataBind();

                    //如果文件名称有中文,指定编码
                    string fileName = HttpUtility.UrlEncode("JobHistoryList", Encoding.UTF8).ToString();


                    //设置编码格式
                    HttpContext.Current.Response.Clear();
                    HttpContext.Current.Response.Charset = "UTF-8";// "UTF-8"或者"GB2312"
                    HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";//text/csv
                    HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
                    HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName + ".xls");
                    //导出excel
                    System.IO.StringWriter oSW = new System.IO.StringWriter();
                    HtmlTextWriter oHW = new HtmlTextWriter(oSW);
                    dg.RenderControl(oHW);

                  

          //输出时加上"<meta http-equiv="content-type" content="application/ms-excel; charset=UTF-8"/>"解决编码问题

          //返回浏览器,
                    HttpContext.Current.Response.Write("<meta http-equiv="content-type" content="application/ms-excel; charset=UTF-8"/>" + oSW.ToString());
                    HttpContext.Current.Response.End();

  • 相关阅读:
    内存分配问题
    C++ assert 的一点说明
    强大的stringstream
    C++中随机数
    C++ 中new
    C++ 中string 详解 转载自 博客园
    未命名名字空间
    使用ifstream和getline读取文件内容[c++]
    6.bootstrap练习笔记-缩略图和list-group
    3.bootstrap练习笔记-媒体内容
  • 原文地址:https://www.cnblogs.com/johnblogs/p/6112892.html
Copyright © 2011-2022 走看看