是不是要设置编码:System.Text.GetEncoding("gb2312");

解决方案 »

  1.   

    用 Server.UrlEncode() 方法将中言语字符编码
      

  2.   

    To  spring_ok(SpringDotNet):
    我做的是控制台程序,而且我把含中文的url直接输入浏览器却完全正确。
      

  3.   

    try:
    System.Web.HttpUtility.UrlEncode();>而且我把含中文的url直接输入浏览器却完全正确。
    编码的工作,浏览器帮你做了
      

  4.   

    To  Meyer() 
    无效的 URI:无法确定 URI 的格式。
      

  5.   

    好象WebRequest就是不支持中文吧!!??
      

  6.   

    URL请求可能有三个部分组成:协议(http://)、一个地址URI和你的请求字符串(Get方式):
     http://www.google.com/search?q=hello
    把地址部分(www.google.com)送到System.Web.HttpUtility.UrlEncode()中编码,请求部分保留(如果有中文的话也需要单独编码,但要把?和&等排除在外)。还有,http://不要送到编码里面去。
      

  7.   

    To qqchen79,你说得确实很对,我也知道了原因
    经过试验,我发现
    原来浏览器给汉字编的码跟System.Web.HttpUtility.UrlEncode()根本就不一样,所以才会出现这些问题。不知道用什么方法才能得到象浏览器那样的编码?
    谢谢
      

  8.   

    难道.net中没有办法解决url中的中文问题?
      

  9.   

    哈哈,你真他妈的走运,我也碰上了这个问题
    经过三个小时不懈的努力终于找到解决的办法了
    public string GB2Unicode(string strSearch)
    {
    string Hexs="";
    string HH;
    Encoding GB=Encoding.GetEncoding("GB2312");
    Encoding unicode=Encoding.Unicode; byte[] GBBytes=GB.GetBytes(strSearch);
    for(int i=0;i<GBBytes.Length;i++)
    {
    HH="%"+GBBytes[i].ToString("x");
    Hexs+=HH;
    }
    return Hexs;
    }
    我写了这么个函数,把汉字先变成Unicode哈哈,然后在加到URL中,就OK了,哈哈,兴奋死了