建库是选的是GBK,每个表,每个字段都是gbk,用命令查询也正确,但用sql语句查询就成了??????,还没到展现,查出来就是

解决方案 »

  1.   

    "用命令查询也正确"你是指在mysql console执行sql语句,返回的结果没有乱码,但是通过程序来执行就出现乱码?你可以这样来排错,把你要执行的sql语句,打印出来,看看里有没有乱码,或者你在提交sql语句之前作一下转换,例如java的,可以这样做:String sql=new String(sql.getByes("ISO-8859-1"),"GBK");
      

  2.   

    谢谢,但sql语句本身没有乱码,但取出的数据全是????
      

  3.   

    public static String parseChinese(String in) {
        String s = null;
        byte temp[];
        if (in == null) {
          System.out.println("Warn:Chinese null founded!");
          return new String("");
        }
        try {      temp = in.getBytes("iso-8859-1");
          s = new String(temp);
        }
        catch (UnsupportedEncodingException e) {
          System.out.println(e.toString());
        }
        return s;
      }
    把输出中文的地方用
    parseChinese(resultSet.getString(i));
      

  4.   

    console中乱码吗?你装一个客户端,然后设置客户端的编码,在试试看