已知已经得到一个被转成乱码的字符串b(奇数个),现在需要转回来,用b=new String(b.getBytes("GBK"),"utf-8");发现最后一个无法弄出来,不要说过滤器和设置之类的大改动方法。。。现在需要一个局部的能迅速解决的java代码
原始的字符串b是怎么来的?
如果是从输入流中读取的,记得要关闭流(close),或者flush,
我怀疑是没有读取完整,导致你有时可以,有时不行,(奇偶个数可能正好是碰巧了)
你确定原来是GBK编码吗?
gbk一般占两个字节,utf8中汉子一般占3字节,英文和数字占1字节,奇偶数是个巧合,嗯。