字符集之间转换问题,用一下函数解决:
  /**
   *目的    : 内码编码转换
   *@param  : String类型  strValue  : 8859-1字符串
   *@return :String类型  gb2312编码
   */
  public static String toGB2312(String strValue) {
    if (strValue == null)
      return null;
    try {
      String strTemp = strValue;
      byte[] bytTemp = strTemp.getBytes("ISO8859-1");
      String strResult = new String(bytTemp, "GB2312");
      return strResult;
    }
    catch (Exception e) {
      return null;
    }
  }

解决方案 »

  1.   

    JSP页面设置的字符写成GBK或GB2312,不行的话用楼上的方法。
      

  2.   

    String getUserName=new String(request.getParameter("UserName").getBytes("iso8859_1"),"gbk");
      

  3.   

    String getUserName=new String(request.getParameter("UserName").getBytes("ISO8859_1"),"GBK");
      

  4.   

    每个jsp页首加上:<%@ page contentType="text/html; charset=GB2312" %><html><head>
    <title>投诉代码维护</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
      

  5.   

    你的情况我碰到过,我也写了request.setCharacterSet("GB2312"),但还是乱码,后来我把request.setCharacterSet("GB2312")放在<%@ page ...%>之后,在HTML的head元素之前就解决了这个问题.
      

  6.   

    你什么都不需要.就在你的doPost和doGet方法里面加上一句
    request.setCharacterEncoding("GB2312");
    response.setContentType(CONTENT_TYPE);
    如:
    private boolean doPerformGet(HttpServletRequest request,
                                   HttpServletResponse response)
          throws
          ServletException,IOException
      {
        request.setCharacterEncoding("GB2312");
        response.setContentType(CONTENT_TYPE);    String action = request.getParameter("search");
        if(action != null) {
          //导向查询页面
          doSearch(request,response);
          return true;
        }
        action = request.getParameter("view");
        if(action != null) {
          //导向浏览页面
          doView(request,response);
          return true;
        }
        action = request.getParameter("AddNav");
        if(action != null) {
          //导向添加页面
          doDisplayAdd(request,response);
          return true;
        }
        action = request.getParameter("EditNav");
        if(action != null) {
          //导向更新页面
          doDisplayModify(request,response);
          return true;
        }
        action = request.getParameter("collect");
        if(action != null) {
          doCol(request,response);
          return true;
        }
        return false;
      }
      

  7.   

    我服务器用的resin
    网上说的办法我都试过,最后还是不行,祝楼主好运!
      

  8.   

    String name = new String(rs.getString().getBytes(ISO8859_1));呢?
      

  9.   

    File directory = new File(new String(request.getParameter"directoryName").getBytes("ISO-8859-1")));
    //实例化一个file类,参数为文件夹名称
    //.getBytes("ISO-8859-1") 这个方法是解决中文的问题
      

  10.   

    繁體﹕
    String name = new String(request.getParameter("name").getBytes("8859_1"),"BIG5")
    簡體﹕
    String name = new String(request.getParameter("name").getBytes("8859_1"),"GB3212")
      

  11.   

    request.setCharacterSet("GB2312")应该可以
    除非你用的是Tomcat 4.1.29,昨天我试了一个小时也没能搞定他
    后来干脆就用Tomcat 5了
    你的Tomcat不知道是不是也是这个缘故,不过建议你换一个低版本或是高版本的Tomcat再试试.唉,Tomcat不行了,4.1.27热加载有问题,29又出了新问题.
      

  12.   

    5。0。14也是不支持中文html的
      

  13.   

    没办法,换低版的 Tomcat 好了。