url:http://localhost/MayIC/login.aspx?name=%C4%E3网页程序:
value = Server.UrlDecode(Request.QueryString.Get ("name"));假如经编码的name中只有ascii字符,没任何问题,但是如果有中文字符没法解码,value为空,
Server.UrlDecode去掉也一样,不知怎么解决?
value = Server.UrlDecode(Request.QueryString.Get ("name"));假如经编码的name中只有ascii字符,没任何问题,但是如果有中文字符没法解码,value为空,
Server.UrlDecode去掉也一样,不知怎么解决?
解决方案 »
- 用户名验证
- |zyciis| 老问题,如何重启网站,开始的修改WebConfig的办法不行,在服务器提示访问web.config被拒绝,第二贴 说明我的问题
- JavaScript 如何判断同时按下两个键?
- 去掉多余HTML标记
- 我的ImageButton在哪儿?
- FreeTextBox 3.0 的问题
- datagrid排序问题,搜过论坛了,没有相关解决方法
- 请教一下高人,以下各个C#图标是什么意思?很简单的,给100分!
- help me!a question about asp.net web matrix!
- 急急急! 在线等待.
- ajax新年第二问。。请N人进来指教一下
- 各位老大,有谁知道csdn的导航树是如何做的?
value = HttpUtility.UrlDecode(Request.QueryString.Get ("name"), Encoding.GetEncoding("GB2312"));
encoding = Encoding.GetEncoding( request.QueryString["enc"] ); NameValueCollection parameters = HttpUtility.ParseQueryString( request.Url.Query, encoding );
QueryString集合里已经是解码后的值
但既然是解码,就必须要用正确的字符集去接
如果你没改默认设置,那系统会用utf8去解.但显然%C4%E3是GB2312编码的
所以Request.QueryString.Get ("name")得不到值解决办法:
1.还是用默认的utf8,参数用utft进行url编码,"你"的utf8 url编码是%e4%bd%a0
2.修改web.config,globalization 节,将requestEncoding responseEncoding由utf8改为gb2312
这样,系统在解码时会用GB2312去解
试试