byte[] 和 String 互转中个别数据会出现乱码,这是为什么?
1个回答
展开全部
转换时使用"UTF-16LE",确保所有string字符转成两个byte变量,大部分数据没有问题,但是发现byte[] b = new byte[]{20, -35}时,出问题了。
代码如下:byte[] b = new byte[]{20, -35};
byte[] n = new String(b).getBytes();
String str = null;try{str = new String(b,"UTF-16LE");
n = str.getBytes("UTF-16LE");}catch(UnsupportedEncodingException e){
e.printStackTrace();}System.out.println(str);
System.out.println("n-------------------------------------------");
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询