请问如何更改HttpWebRequest发送给internet的URI中的编码?

hahahawk 2003-05-09 01:43:45
HttpWebRequest hwr = (HttpWebRequest)WebRequest.Create("http://www.qiong.net/default.htm");
HttpWebResponse hwp = (HttpWebResponse)hwr.GetResponse();
//上面这种情况不会出错,因为uri中是英文字符
hwr = (HttpWebRequest)WebRequest.Create("http://www.qiong.net/我default.htm");
hwp = (HttpWebResponse)hwr.GetResponse();
//上面这种情况会出错。因为uri会把字符串中汉字变为二进制%AD%09等。导致在web上无法找到文件。
请问现在服务器上有的页面已经使用了汉字,如何用HttpWebRequest获取?
...全文
40 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hahahawk 2003-05-22
  • 打赏
  • 举报
回复
问题也许不是出在client端,也许是服务器的配置不对。
hahahawk 2003-05-09
  • 打赏
  • 举报
回复
skyover(嘻哈呵嘿):
你没有看明白我的问题。我的意思不是StreamReader 从HttpResponseStream中读取数据时候不能正确显示汉字,而是在这些步骤之前,即发送给web服务器的时候
,URI中包含汉字(即网页地址中的汉字,而非网页内容中的汉字),由于发送的时候不能将汉字正确发送给web服务器,导致找不到该网页。在req.GetResponse()这一步就会提示找不到请求的网页。

谁能帮助解决,万分感谢。
skyover 2003-05-09
  • 打赏
  • 举报
回复
req = WebRequest.Create(url)
result = req.GetResponse()
ReceiveStream = result.GetResponseStream()
encode = System.Text.Encoding.GetEncoding("gb2312")
sr = new StreamReader( ReceiveStream, encode )
skyover 2003-05-09
  • 打赏
  • 举报
回复
req = WebRequest.Create(url)
result = req.GetResponse()
ReceiveStream = result.GetResponseStream()
encode = System.Text.Encoding.GetEncoding("gb2312")
sr = new StreamReader( ReceiveStream, encode )
hahahawk 2003-05-09
  • 打赏
  • 举报
回复
To chinchy:
我是在Windows程序中调用HttpWebRequest类。你说的是web中的。不过我还是尝试了一下,在Form中引入System.Web DLL,然后
string ss = System.Web.HttpUtility.UrlEncode("http://www.qiong.net/我default.htm");
HttpWebRequest hwr = (HttpWebRequest)WebRequest.Create(ss);
仍然不行,因为它不仅把汉字转换成%等,而且把http后面的://也转换了,WebRequest(ss)时候会报错:不合法的URI。
不知道哪为能解决此问题?急用,万分感谢!
chinchy 2003-05-09
  • 打赏
  • 举报
回复
HttpUtility.UrlEncode("http://www.qiong.net/我default.htm");

62,025

社区成员

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

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

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

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