我从对方的数据库中查出的数据在后台直接输出时为乱码!加上
new String(str.toString().getBytes("gbk"),"utf-8")输出 时当中文的个数为奇数时最后一个字乱码,为偶数时正常!请各位前辈帮忙解决一下!小弟感激不尽!

解决方案 »

  1.   

    还有这种事情?直接打印出来看看,确定对方的编码格式是否为gbk
      

  2.   

    我做项目的时候也遇到过这个问题,我当时的处理方法是,先进行判断是奇数还是偶数,如果是偶数,就这样输出,如果是奇数,则去掉最后一个数,就变成偶数了,然后用String里面一个可以指定长度的构造方法构建String,
    String(byte[] bytes, int offset, int length) 
    不过我那个需求,是允许只显示部分信息,所以如果是奇数去掉最后一个没有影响,不知道你的需求会不会有影响
      

  3.   

    不对,你这个问题跟我的不一样,我的那个问题是,字节是奇数或者偶数,然后转换成中文,你这个如果gbk格式的中文,转换成utf-8的中文,应该不会有这样的问题吧、、你把代码贴出来看看。。
      

  4.   

    听说gbk编码一个汉字byte数和utf-8不一样,所以会造成这样的结果,听说先把编码转成ISO-8859-1后再转utf-8使他们的byte数一样就可以解决乱码问题了...