我URL是Body=2%admin
sBody=(String)req.getParameter("Body");
new String(sBody.getBytes("ISO-8859-1"),"gb2312");
可是这样取到的值确是3??in
我也经过编码转换了,就是找不出咋回事~~~

解决方案 »

  1.   

    Body=2%admin
    怎么是URL啊!!不明白了!!
      

  2.   

    Body=2%admin
    ?????????????????????是什么,int吗?
      

  3.   

    sBody=(String)req.getParameter("Body");
    new String(sBody.getBytes("ISO-8859-1"),"gb2312");
    试试这么写看看吧
    String sBody=new String(request.getParameter("Body").getBytes("iso-8859-1"));
      

  4.   

    这本身就是不是什么乱码的问题!
    是因为"%"引起的歧义
    在参数传输中若要传送包括转义字符和敏感字符都需要经过处理
    如:你现在要传输 参数为:P  数值为:2%admin
    可能你的请求来源是一个链接
    如:respose.jsp?P=2%admin
    那么你处理一下在你的页面链接上这样
    <a href="response.jsp?P=<%=java.netURLEncoder.encode("2%admin")%>"> 这样就OK啦!