这几天遇到一个url中汉字编码的问题,经过研究发现
.net的HttpWebRequest在发送url中,会把url中的汉字自动编码WebRequest   req   =   HttpWebRequest.Create( "http://localhost/WebTest/Server.aspx?China=汉字 ");URL   被C#自动编码了。http://localhost/WebTest/Server.aspx?China=汉字变成了:   http://localhost/WebTest/Server.aspx?China=%e6%b1%89%e5%ad%97
 
我想解决问题的方式就是不让HttpWebRequest自动编码

解决方案 »

  1.   

    不编码无法在网上传输url,为何不编码,你在服务器端解码不就行了?
      

  2.   

    服务器段不是我的,我没法改动这个带汉字的网址在ie的地址栏使用,是正常的
    但是用在HttpWebRequest里面用,就自动编码,服务器端接收就出现问题了
      

  3.   

    网络使用的TCPIP协议传输的就是二进制数字,不能传中文。所以需要编码(即中文转换成二进制),服务器那端不认,要找网站管理者协助。自己这么瞎猜,太不靠谱了!
      

  4.   

    地址都是编码的。那边没法控制,不影响使用编码的。
    WebRequest req = HttpWebRequest.Create( "http://localhost/WebTest/Server.aspx?China=" + System.Web.HttpUtility.UrlEncode("汉字", System.Text.UnicodeEncoding.GetEncoding("GB2312")));