asp.net 输出txt文件的时候中文出现乱码,已解决

using System.Text;
using System.IO;

 

Response.ContentEncoding = Encoding.GetEncoding("gb2312");
String aa = Server.MapPath("/11.txt");
Response.Write("<textarea style=\"height:900px; width:96%;\">");
Response.WriteFile(Server.MapPath("/11.txt"));
Response.Write("</textarea>");

 

原因:

c# 中StreamReader读入中文乱码问题,其原因:编码不认识,原来自从Windows 2000之后的操作系统在文件处理时默认编码采用Unicode,所以.Net 的文件默认编码也是Unicode。除非另外指定,StreamReader 的默认编码为 Unicode,而不是当前系统的 ANSI 代码页。但是文档大部分还是以ANSI编码储存,中文文本使用的是gb2312,所以才造成中文乱码的状况,也就是说在读取文本的时候要指定编码格式。

 

Response.ContentEncoding = Encoding.GetEncoding("gb2312");
Response.WriteFile(Server.MapPath("~/哪几类人最容易被提拔重用?.txt"));
一般记事本中创建的txt默认是gb2312的。直接这样写就行了。

posted @ 2015-10-08 15:01  z542601362  阅读(718)  评论(0)    收藏  举报