Server.UrlEncode:%ce%c4%bc%fe%c9%cf%a3%a8%b4%ab%a3%a9%c6%aa.doc //编码
Server.UrlDecode:文件上(传)篇.doc //解码
HttpUtility.UrlEncode:%e6%96%87%e4%bb%b6%e4%b8%8a%ef%bc%88%e4%bc%a0%ef%bc%89%e7%af%87.doc
HttpUtility.UrlDecode:文件上(传)篇.docServer.UrlEncode(Request.RawUrl)//编码
用的时候在解码

解决方案 »

  1.   

    to kongwei521:
      
      此方法已试过,问题依然存在,因为用Request.RawUrl获取的值中,中文已经变成����ԺУ,使用HttpUtility.UrlEncode或Server.UrlEncode时,是对����ԺУ进行编码,UrlDecode解码之后依然还是����ԺУ
      

  2.   

    先对中文进行编码,然后在用Request.RawUrl获取的时候解码
      

  3.   

    a.aspx:
            <asp:HyperLink ID="HyperLink1" NavigateUrl="~/Default8.aspx?tid=9&tname=本科院校&It_id=29" runat="server">HyperLink</asp:HyperLink>b.aspx"
    protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write("<b>Request.Url.AbsoluteUri:</b> " +Server.UrlDecode( Request.Url.AbsoluteUri) + "<br>");    }
    测试了没问题。
    http://www.cnblogs.com/dachie/archive/2010/07/01/1768827.html
      

  4.   

    to kongwei521:不行,得到的依然是����ԺУ的乱码直接在地址栏输入了url:http://localhost:3050/Laoshi/Js_ds_note.aspx?tid=9&tname=本科院校&It_id=29,而不是通过链接跳转
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            Dim k As String = Server.UrlDecode(Request.Url.AbsoluteUri)  'Request.RawUrl
            TextBox1.Text = k
        End Sub
      

  5.   

    让IIS服务器支持中文文件名   
    修改注册表,将[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters\FavorDBCS] 的值改为 "0 "即可。不过,重启机器才能生效。
      

  6.   

    http://www.cnblogs.com/birdshover/archive/2008/03/06/1092737.html 你看下这个吧。再不行就没办法了
      

  7.   

    像这种 tname=本科院校  中文参数很明显在传参的时候就需要转码