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

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

**hbzxf(阿好)
** http://www.cnblogs.com/hbzxf

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

更改Webconfig中的编码方式,如下:

1.在你的web.config中把编码

**

1<globalization requestencoding="utf-8" responseencoding="utf-8"></globalization>

改为 **

**

1<globalization requestencoding="gb2312" responseencoding="gb2312"></globalization>

**


第二种方法:

**首先在传递之前先编码:举例如下:
** **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); **

都是作者自身经历的一些小问题,不妨写出来让大家看看,侃侃。

由于作者水平有限,代码疏漏之处,请指点出来,代码很乱,敬请原谅!

Published At
Categories with Web编程
Tagged with
comments powered by Disqus