asp.net编程开发中,用C#地址栏传中文的时候,在获取的页面中得到的中文是乱码。我在网上找到一下,都说的太复杂,我经过测试了一下,总结了两个方法。
1、使用js中的escape函数来解决asp.net中文乱码问题
具体方法如下:
<script type="text/JavaScript"> function GoUrl() { var Name = "asp编程网www.aspbc.com"; location.href = "default.aspx?b=" + escape(Name); } </script>(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
然后在default.aspx页面上使用
<% string a=Request.QueryString["b"]; response.write(a); %>(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
这样就可以了
2、使用C#的HttpUtility.UrlEncode 方法对URL字符串进行编码
WebForm1.aspx.cs
public string b; protected void Page_Load(object sender, EventArgs e) { b = HttpUtility.UrlEncode("asp编程网www.aspbc.com", System.Text.Encoding.GetEncoding("utf-8")); }(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)