博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Asp.Net Url 传值出现乱码的解决方法
阅读量:5142 次
发布时间:2019-06-13

本文共 1293 字,大约阅读时间需要 4 分钟。

1.设置web.config文件

View Code
......
......

2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。 

>> 进行传递

string Name = "中文参数";Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name)) ;

>> 进行接收

string Name = Request.QueryString["Name"];Response.Write(Server.UrlDecode(Name)) ;

3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。 

>> 进行传递

>> 进行接收

string Name = Request.QueryString["Name"];Response.Write(Server.UrlDecode(Name)) ;

 总结:

一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。 
或用

Response.Redirect("test1.aspx?111="+System.Web.HttpUtility.UrlEncode("中华人明共和国")) ;//建议使用最后如果是从其他的页面获取中文参数没有乱码,那就更简单了string message ="http://localhost/Test/test1.aspx?111="+System.Web.HttpUtility.UrlEncode("中华人明共和国");http://你要获取某个页面的返回值的地址"//发送请求HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(message) ;//接受请求HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse() ;Stream receiveStream = myHttpWebResponse.GetResponseStream() ;StreamReader readStream = new StreamReader(receiveStream, System.Text.Encoding.GetEncoding("GB2312")) ;//此为要取页面的返回值输出的返回结果returnValue = readStream.ReadToEnd();

  

转载于:https://www.cnblogs.com/douqiumiao/archive/2013/04/09/3009691.html

你可能感兴趣的文章
[USACO 2017 Feb Gold] Tutorial
查看>>
关于mysql中GROUP_CONCAT函数的使用
查看>>
OD使用教程20 - 调试篇20
查看>>
Java虚拟机(JVM)默认字符集详解
查看>>
Java Servlet 过滤器与 springmvc 拦截器的区别?
查看>>
(tmp >> 8) & 0xff;
查看>>
linux命令之ifconfig详细解释
查看>>
NAT地址转换
查看>>
Nhibernate 过长的字符串报错 dehydration property
查看>>
Deque - leetcode 【双端队列】
查看>>
gulp插件gulp-ruby-sass和livereload插件
查看>>
免费的大数据学习资料,这一份就足够
查看>>
clientWidth、clientHeight、offsetWidth、offsetHeight以及scrollWidth、scrollHeight
查看>>
企业级应用与互联网应用的区别
查看>>
itext jsp页面打印
查看>>
Perl正则表达式匹配
查看>>
DB Change
查看>>
nginx --rhel6.5
查看>>
Eclipse Python插件 PyDev
查看>>
selenium+python3模拟键盘实现粘贴、复制
查看>>