当导数据到Excel 中时有时会出现乱码
原来代码
private static void WriteToExcelFromDataGrid(DataGrid dg, string fileName) { //StringWriter tw = new StringWriter(new CultureInfo( "zh-CHS", false)); StringWriter tw = new StringWriter(); HtmlTextWriter hw = new HtmlTextWriter(tw); dg.RenderControl(hw); System.Web.HttpResponse response = System.Web.HttpContext.Current.Response; response.Clear(); response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8"); response.ContentType ="application/vnd.ms-excel"; response.AddHeader("Content-Disposition", "attachment; filename=" + fileName); response.Charset = "gb2312"; response.Write(tw.ToString()); response.End(); }
正确
response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-7");
原因 utf-8不支持中文 
|