一个汉字占多少字节?

中文在utf-8中占3or4字节。

Utf8字符是变长字符,所以这里补充一下uft-8的编码方式。

一个字节:0 * * * * * *

两个字节:110 * * * *,10 * * * *

三个字节:1110 * * *,10 * * * *,10 * * * *

四个字节:11110,10*****,10 * * * * *。

五个字节:11110,10 * * * * *,10 * * * * *。

六个字节:111110,10 * * * *,10 * * *,10 * * *。

所以在得到字节串后,如果要判断UTF8字符的字节长度,只需要按照上面的规则得到字符的第一个字节,就可以根据它的值判断出字符是由几个字节表示的。

GBK编码,一个汉字占用两个字节。UTF-16编码,通常汉字占两个字节,CJKV扩展B、扩展C、扩展D中的汉字占四个字节(一般字符的Unicode范围是从U+0000到U+FFFF,这些扩展的范围大于U+20000,所以需要两个UTF-16)。UTF-8编码是可变长度编码。通常汉字占三个字节,扩展B区后的汉字占四个字节。