急!如何正确获取带有中文的Request.QueryString的值?

淡蓝色2 2003-07-14 11:26:27
我在浏览器的地址栏里输入了参数有中文的地址,如:http://localhost/abc/default.aspx?Name=测试

可在服务器端取到的Name值是个"口",如果用英文或数字就没问题了.
这是怎么回事????

我已在web.config中定义requestEncoding和responseEncoding均为Utf-8,浏览器也设为"始终以UTF-8发送请求".
用text.convert和strConvert方法均无效啊
急!
...全文
182 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
crashloopbackoff 2003-07-15
  • 打赏
  • 举报
回复
哦,那就没问题了,总觉得要urlencode一下保险
淡蓝色2 2003-07-15
  • 打赏
  • 举报
回复
OK!!!

虽然楼上高手的方法有效,但我不可能在程序中所有的地方都写上这么长的语句,语言效率差了点.
但我还要感谢思归,您的"GB2312"提醒了我!!!
现在,只要把web.config中globalization的requestEncoding和responseEncoding都改为GB2312一切都OK了

明天散分,谢谢二位!
淡蓝色2 2003-07-15
  • 打赏
  • 举报
回复
骨灰虫侠:

把web.Config的requestEncodeing置为GB2312或Chinese后,在地址栏里输入的地址夹杂着空格、英文字母、日文字符、俄文字符等都没有问题啊,在服务器端都能正确读取啊

您说的问题指的是什么呢?举个例子好吗?
淡蓝色2 2003-07-15
  • 打赏
  • 举报
回复
又试过了,的确,还是用思归的方法!!
crashloopbackoff 2003-07-15
  • 打赏
  • 举报
回复
还是要用楼上思归的方法
crashloopbackoff 2003-07-15
  • 打赏
  • 举报
回复
你在web.config里设置还是会有问题的,你如果输入空格等字符,还是会有问题的,
还是要在代码里控制的。
ArLi2003 2003-07-15
  • 打赏
  • 举报
回复
替死鬼喊冤
saucer 2003-07-14
  • 打赏
  • 举报
回复
try

HttpUtility.UrlDecode(Request.QueryString["Name"], System.Text.Encoding.GetEncoding("GB2312"))
淡蓝色2 2003-07-14
  • 打赏
  • 举报
回复
"思归" 的方法:无效

"骨灰虫"的方法:有效,但,现在的情况是URL需要手填, 人 不可能先把汉字"URLEncode"后填到地址栏里啊
crashloopbackoff 2003-07-14
  • 打赏
  • 举报
回复
传之前用Server.URLEncode(string)编码
收到后用server.UrlDecode(string)解码
saucer 2003-07-14
  • 打赏
  • 举报
回复
try

HttpUtility.UrlDecode(Request.QueryString["Name"])

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧