第一次碰到这么郁闷的中文问题,操作系统:Compaq Tru64 UNIX
web服务器:tomcat-5.0.28下面是我的代码片断:
message = "对不起,您没有权限登陆平台!";
           System.out.println("message="+message);
           response.sendRedirect("/error.jsp?message="+URLEncoder.encode(StringTool.convertISO(message))+"&pageUrl="+URLEncoder.encode(pageUrl));开始的时候我用这个代码在error.jsp也可以正常显示中文,可是我重新启动tomcat后,就显示为乱麻了。
于是我把编码转换去了,显示正常了。可是我重新启动tomcat的时候,又显示为乱码了。反复都是这样,哪位知道是原因啊 。有什么更高明的办法啊?
谢谢了!!!!

解决方案 »

  1.   

    怎么没人回答呢,是这样的。
    在我调试代码,
    System.out.println("message="+message);  
    只有控制台出是在中文的时候,传递时正常的。
    也就是不是在传输参数的过程中出的问题。
      

  2.   

    加一段
    <%!
       public String convert(String s){
        try{
          return new String(s.getBytes("ISO-8859-1"),"GB2312");
        }catch(Exception e){return null;}
       }
    %>
    所有显示中文的地方都用convert转换一下。
      

  3.   

    你们不知道servlet有个方法嘛?唉~我贡献出来吧
    request.setCharacterEncoding("gb2312");
    楼主解决了给分啊,要不我投诉你!^^