日期:2014-05-20  浏览次数:20416 次

导出EXCEL出现乱码问题
各位:
我用以下代码将DATAGRID导出到excel,当数据量多的时候会出现乱码。
汉字乱码,数字则正常。
Response.Clear();  
Response.Buffer=   true;  
Response.Charset= "GB2312 ";        
Response.AppendHeader( "Content-Disposition ", "attachment;filename=kucunjingbao.xls ");  
Response.ContentEncoding=System.Text.Encoding.GetEncoding( "GB2312 ");//设置输出流为简体中文
Response.ContentType   =   "application/ms-excel ";//设置输出文件类型为excel文件。  
this.EnableViewState   =   false;        
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);
this.ListGoods.RenderControl(oHtmlTextWriter);  
Response.Write(oStringWriter.ToString());
Response.End();
请问是为什么。

------解决方案--------------------
Response.ContentEncoding=System.Text.Encoding.GetEncoding( "GB2312 ");//设置输出流为简体中文
更改成:
Response.ContentEncoding=System.Text.Encoding.Default;//试一试

------解决方案--------------------
Response.ContentEncoding=System.Text.Encoding.GetEncoding( "GB2312 ");//设置输出 ==> Response.ContentEncoding=System.Text.Encoding.UTF8