java.net.Encoder.enocde()方法具体JDK1.3和1.4不一样1.4的方法带两个参数你查查文档吧

解决方案 »

  1.   

    非高手解答t1.jsp
    -----------------------------------
    <%@ page contentType="text/html;charset=gb2312"%><a href="t2.jsp?name=<%=java.net.URLEncoder.encode("汪浩")%>">test</a>
    ------------------------------------
      

  2.   

    url是有中文问题的,要进行URLEncoder转码,试试
    String name="汪浩";
    <a href="t2.jsp?name="+URLEncoder.encode(name,"GBK")>test</a>
      

  3.   

    还是不行
    String name="汪浩";
    <a href="t2.jsp?name="+URLEncoder.encode(name,"GBK")>test</a>
    用了以后url变成了
    http://localhost:8080/examples/IrerWeb/t2.jsp?name=%CD%F4%BA%C6
    用之前是
    http://localhost:8080/examples/IrerWeb/t2.jsp?name=汪浩
    显示的结果都是
    name=???????
      

  4.   

    关于在什么情况下会造成乱码我也了解得不确切有些地方我直接传中文是OK的有些地方encode后仍旧还是乱码
      

  5.   

    非高手再解答:
    t2.jsp
    ------------------------------------
    <%@ page contentType="text/html;charset=gb2312"%>
    <%
    String name=request.getParameter("name");
    name =  new String(name.getBytes("ISO8859-1"),"gb2312");
    out.print("name="+name);
    %>
    ----------------------------------------
    要是再不对我就不知道了
      

  6.   

    呵呵,谢谢,非高手,不管t1.jsp是
    <a href="t2.jsp?name=汪浩">test</a>
    还是
    <a href="t2.jsp?name=<%=java.net.URLEncoder.encode("汪浩")%>">test</a>
    只要t2.jsp用
    <%@ page contentType="text/html;charset=gb2312"%>
    <%
    String name=request.getParameter("name");
    name =  new String(name.getBytes("ISO8859-1"),"gb2312");
    out.print("name="+name);
    %>
    就可以了,再次多谢,是不是太客气了,散分,虽然只有20分
      

  7.   

    下面这个是正确得
    非高手再解答:
    t2.jsp
    ------------------------------------
    <%@ page contentType="text/html;charset=gb2312"%>
    <%
    String name=request.getParameter("name");
    name =  new String(name.getBytes("ISO8859-1"),"gb2312");
    out.print("name="+name);
    %>
    ----------------------------------------
    不过我用<jsp:forward page="t2.jsp?name=汪浩"/>好像还是有问题