byte[] 和 String 互转中个别数据会出现乱码,这是为什么?

 我来答
绝地hW5W
2013-08-24 · TA获得超过468个赞
知道答主
回答量:150
采纳率:80%
帮助的人:60.2万
展开全部
转换时使用"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-------------------------------------------");
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式