大家都知道字符串getbytes方法如果没有charsetName参数的话,是采用Java默认的Unicode编码方式把字符串转化成字节数组,而Unicode编码是采用2个字节来表示每个字符。按照这个推理上面例子中"测试".getBytes().length就是4了,但是结果确实6。通过遍历每个字符发现,好像在前面自动加了""。
而对于GB2312等其他编码方式来说没有上面的问题。
大家都知道字符串getbytes方法如果没有charsetName参数的话,是采用Java默认的Unicode编码方式把字符串转化成字节数组,而Unicode编码是采用2个字节来表示每个字符。按照这个推理上面例子中"测试".getBytes().length就是4了,但是结果确实6。通过遍历每个字符发现,好像在前面自动加了""。
而对于GB2312等其他编码方式来说没有上面的问题。