Android String通过蓝牙串口byte[]传送后转成String

String转成byte[]后,蓝牙另一端接收到再转成String,对应的比如utf-8或者GBK编码等,一般都会变成乱码。
通过实验发现中间需要通过java内部编码,包括中文也都能正确的变回String。

发送端:
str.getByte("ISO-8859-1");
接收端:
gbkChinese = new String(tmp,"ISO-8859-1");
String unicodeChinese = new String(gbkChinese.getBytes("ISO-8859-1"),"GBK");//java内部编码

推荐阅读更多精彩内容