String mCaption=new String(request.getParameter("Caption").getBytes("8859_1"));
接收的时候还要转换

解决方案 »

  1.   

    在取参数之前先调用
    request.setCharacterEncoding("GB2312");
      

  2.   

    有中文的地方用转中文函数转一下 public String getStrcn(String str){
      if(str==null){
      str="";
      }
      else{
      try{
      str=new String(str.getBytes("iso-8859-1"),"gb2312");
      }
      catch(Exception ex){
      }
      }
      return str;
      }
    out.println(getStrcn(name));
      

  3.   

    <%@ page contentType="text/html;charset=gb2312" %>对静态的中文有效;
    楼上的方法对传输过程中的中文有效!
      

  4.   

    给你个字符转换函数,可以常用的
    /**** 字符集的转换函数 ****/
            // added by baiqing 2003.02.18
            public static String charConvert(String strSource){
                if (strSource == null){
                    return "";
                }
                else{
                    try{
                      //return new String(strSource.getBytes("GB2312"), "ISO-8859-1");
                      String str = new String(strSource.getBytes("ISO-8859-1"), "GB2312");
                      System.out.println(str);
                      return str;
                    }
                    catch (Exception ex){
                      System.out.println(ex.toString());
                      return "";
                    }
                }
            }