日常get知识记录【6】Android 字符转换注意点

1、问题:安卓端byte数组转换为字符串,再从字符串转回数组的值会出错,和原byte数组不一致

原因:由于 UTF-8 是多字节编码,需要用多个字节来表示一个字符的编码,所以也就出现了在转换之后 byte[] 数组长度、内容不一致的情况

解决方法:加入编码ISO-8859-1,ISO-8859-1 编码是单字节编码,所以使用该编码就不会出现上面的问题(部分修改)

原:String sIntoMsg = new String(bIntoMsg);

改:String sIntoMsg = new String(bIntoMsg, StandardCharsets.ISO_8859_1);

原:sIntoMsg .getBytes()

改:sIntoMsg .getBytes(StandardCharsets.ISO_8859_1)

你可能感兴趣的:(字符串,android)