你需要知道是哪个字符编码集, 比如utf-8, 或者gb2312.
如果用iso-8859-1存储的, 想转换为GB2312, 可以用如下方法:
String s = new String( originalS.getBytes( "ISO-8859-1" ), "GB2312" );

解决方案 »

  1.   

    我把以下JAVA支持的标准字符编码集"US-ASCII","ISO-8859-1","UTF-8","UTF-16BE","UTF-16LE","UTF-16"都试过了,还是不行呀!难道还有别的字符编码集,请赐教!!!
      

  2.   

    //***************************************************
    //名称:ChangeCode
    //功能:转换指定字符串的字符集(字符编码)
    //输入:strSource: 要转换的字符串; strCodeFrom: 源字符集; strCodeTo: 目的字符集
    //输出:
    //返回:转换之后的字符串
    //***************************************************
    public String ChangeCode(String strSource, String strCodeFrom, String strCodeTo)
    {
    byte[] baTemp = null;
    try
    {
    baTemp = strSource.getBytes (strCodeFrom);
    strSource = new String (baTemp,strCodeTo);
    }
    catch (Exception e)
    {
    return (e.toString ());
    } return (strSource);
    }String strSQL = "中华人民共和国";
    strSQL = ChangeCode (strSQL, "8859_1", "cp850");
      

  3.   

    好象,java会自动处理从数据库里出来的字符的
    可能是太智能了,:)
    一般到了程序里都是utf-8了
      

  4.   

    1.18的JDK试试这个
        
        int l= str.length();
        buf = new byte[l];
        str.getBytes(0, l, buf, 0);和构造Stringnew String(,0)
      

  5.   

    要知道还和你用的JDBC驱动有关系.
      

  6.   

    sql server了默认编码格式是ISO8859_1
      

  7.   

    jsp中用万能的是request.setCharacterEncoding("GBK");
    一般最好用大字符集GBK。