在输出url的字符串前,先用java.net.URLEncoder对字符串编码。
在Servlet中p=getParameter()后,要 p= new String(p.getBytes("8859-1"),"GB2312");

解决方案 »

  1.   

    new String(p.getBytes("iso-8859-1"),"GB2312");
    new String(p.getBytes(),"GB2312");多试一下
      

  2.   

    是只用更改SERVLET的程序,HTML不用改动吗?还有,怎么对字符串编码?
    哈哈,我是初学者。还望费心了。
      

  3.   

    我得到一种新说法:
    使用String squery=request.getQueryString(); request 是HttpServletRequest类
    这样squery就是得到的参数值是中文,经过Http协议处理之后的编码
    与form提交上的参数值是一样的