最近在学习java过程中,发现一些编码的问题,如:有一个字符串如 "a中国b";这个字符串占用多少字节呢?
gbk:6字节
gb2312:6字节
utf-8:8字节
有的人可能会说为什么不是:
gbk:8字节
gb2312:8字节
utf-8:12字节
这么多字节呢?
因为半角下的英文字母内部是采用的ascii进行编码的,所以只会占用1个字节。
如果字符串是"a中国b",其中ab是采用的全角输入的,这种情况下的字节才是:
gbk:8字节
gb2312:8字节
utf-8:12字节
所以能得出一个结论就是:不管是什么字符集进行编码,只要是能够使用ascii进行解码的,都是只占用1个字节的。