在Java中,字符串的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这表示在不同的操作系统下,返回的东西不一样!
String.getBytes (Stringdecode)方法会根据指定的编解码码返回某字符串在该编码下的字节数组表示,如:
byte [] b_gbk="中" .getBytes (“GBK”);
byte [] b_utf8="中" .getBytes (“utf - 8”);
将分别返回“中”这个汉字在GBK, utf - 8编码下的字节数组表示,此时
b_gbk的长度为2,
b_utf8的长度为3,
而与getBytes相对的,可以通过新的字符串(byte[],解码)的方式来还原这个“中”字,
这个新的字符串(byte[],解码)实际是使用指定的编码解码来将byte[]解析成字符串。
字符串s_gbk=新的字符串(b_gbk GBK);
字符串s_utf8=新的字符串(b_utf8“utf - 8”);