试试这个String s = new String( datas.getBytes( "gb2312" ) );必须要是数据库中取出的文字才有可能需要转换,自己的字符串常量不需要转换

解决方案 »

  1.   


    <%@ page contentType="text/html;charset=GB2312" %>
    String s = new String("中文".getBytes(),"GB2312");
    out.println(s);  
      

  2.   

    answer question 1:
    你的s在赋值的时候有没有用trim()方法?如果有的话,去掉应该就可以了!
    answer question 2:
    应该不用其他的方法,数据库操作只是关心你的纪录值,而不是版本问题。如果上述答案不正确的话,那我就劝告你:试,试,再试!反复的试验!
      

  3.   

    这个肯定没问题:byte[] temp;
    temp = yourString.getBytes("iso8859-1");
    RightString = new String(temp);
      

  4.   

    TO Whiteshen:不知道你用的什么编辑器,如果是JBUIDER按下面执行
    菜单tools->Editor option...->display 把font family改成宋体、黑体或其他字体就可以了
      

  5.   

    好像应该是这样写吧:
    String s = new String("中文".getBytes("ISO8859_1"),"GBK");
    //String s = new String("中文".getBytes("ISO8859_1"),"GB2312");
    System.out.println(s);如果这种方法不行就这样试试:
    String s = new String("中文".getBytes("GBK"),"ISO8859_1");
    //String s = new String("中文".getBytes("GB2312"),"ISO8859_1");
    System.out.println(s);
      

  6.   

    strvalue = new String(strvalue.getBytes("ISO8859_1"), "GBK");
      

  7.   

    1。Jsp中,解决中文参数的乱码问题有两种方法:
       a.设置charset=ISO-8859-1
       b.转换函数:
         String s = new String("中文".getBytes("ISO-8859-1"),"GB2312");
    2。数据库的显示与写入:
       a.设置charset=gb2312
       b.转换函数(读数据库):
         byte[] temp;
         temp = yourString.getBytes("iso-8859-1");
         RightString = new String(temp);
       c.写数据库:
         str1byte = str1.getBytes();
         str2 = new String(str1byte,"iso-8859-1");注:iso-8859-1具体怎么写我忘了。
      

  8.   

    自己来解决吧对于不同的联结方式(ODBC桥和JDBC的)
    不同的操作系统
    的解决方法都不同
    所以只能多试了