new String(aaa.getBytes("8859_1"),"gb2312");

解决方案 »

  1.   

    <%@ page contentType="text/html;charset=gb2312""%>
    String str=rs.getString("XXX");
    result=new String(str.getBytes("ISO8859_1"),"gb2312");
      

  2.   

    已经是乱码的无法再转回来了,但可以防止以后出现乱码。
    以下样例可以不用对每个有汉字的input提交内容进行转码,即可避免乱码。可以把gb2312换成gbk<%@ page contentType="text/html;charset=gb2312"%>
    <%
    response.setContentType("text/html;charset=gb2312");
    %>
    <FORM METHOD=POST ACTION="">
    <INPUT TYPE="text" NAME="msg">
    </FORM>
    <%
    if(request.getParameter("msg")!=null)
    out.println(request.getParameter("msg"));
    %>