请教大神request.querystring碰到中文参数返回乱码的问题,解决方案必须支持不编码的中文参数
情况是这样,做了个blog系统,必须支持http://blog.xx.com/xxx这样的地址访问,问题在于这个xxx是网站的用户名,支持中文,我查了好多request.querystring中文乱码的解决办法,基本都是传值前进行URL编码,我现在需要一种不编码,直接在浏览器中输入中文参数,能够正确接收的办法。大家可以看到 Google http://www.google.cn/search?q=中国 百度 http://www.baidu.com/s?wd=中国
这样直接输入中文参数都是可以正确显示结果的,难道.net做不到吗? --------------------编程问答-------------------- url编码问题。。。。。。。。。你在浏览器易做图问其实是浏览器自动帮你转码了。。。 --------------------编程问答-------------------- webconfig 中
<globalization requestEncoding="gb2312" responseEncoding="gb2312" />
你是指这样? --------------------编程问答-------------------- 你试下改变一下浏览器中的编码格式...... --------------------编程问答-------------------- string sdftr = "http://www.baidu.com/s?wd=%D6%D0%B9%FA";
string str2 = System.Web.HttpUtility.UrlDecode("%D6%D0%B9%FA",System.Text.Encoding.Default);
我顺手帮你写的。是控制台语句。。。
你可以参考server.urldecode语句 --------------------编程问答-------------------- 设置web.config文件。
<system.web>
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
</system.web>
--------------------编程问答-------------------- web.config 设置了,不管用,测试环境是vista IE7 --------------------编程问答-------------------- 这样就可以实现你的目的了,直接在Url后跟中文:
--------------------编程问答-------------------- --------------------编程问答-------------------- 这个问题貌似,是你页面编码使用的是utf-8,或者你的web.config文件设置了编码为utf-8
如果是gb2312应该不存在这个问题的。 --------------------编程问答-------------------- 呼~帮顶。楼主彻底解决问题了吗? --------------------编程问答-------------------- 传输的时候要加入编码吧 --------------------编程问答-------------------- 百度 gb2312
google utf-8 --------------------编程问答-------------------- 传特殊符号或中文时注意加码,使用的时候再解码,相关可以参考文档的UrlEncode和UrlDecode
补充:.NET技术 , ASP.NET