小迪的Blog
学习ing...(注明:该Blog中的任何信息都非原创,只是作为个人的阅读笔记)

如何解决页面之间传输中文乱码的问题

有的时候我们需要在页面之间传输中文,但是.NET默认在Webconfig中为我们建立的编码格式为utf-8,于是在传输中文的时候变成了乱码,相应的接受也会是乱码信息,如何解决这个问题,我们可以用两种方法。

1.更改Webconfig中的编码方式,如下:
    <globalization
            requestEncoding="utf-8"
            responseEncoding="utf-8"
   />
改为

    <globalization
            requestEncoding="gb2312"
            responseEncoding="gb2312"
   />


2.
首先在传递之前先编码:
例如:
string xm=Server.URLEncode("张三");
Response.Redirect("b.aspx?xm="+xm);

然后在接收页解码:
string xm = Server.URLDecode(Requext.querystring("xm"));

 

还有一个要说的是,在我们制作邮件系统时,会有一个接收base64的问题,经常会产生乱码,我是这样解决的,不妨试试。代码如下:
string encodedMail="邮件内容";
byte[] barr=Convert.FromBase64String(encodedMail);
string decodedMail=System.Text.Encoding.GetEncoding("gb2312").GetString(barr);

 

 

 

 

 

 

 

 


posted on 2005-04-03 16:21  小迪  阅读(657)  评论(0编辑  收藏  举报