摘要

今天在用数据库的时候,发现数据库中,一个汉字占了3个字节,不是2个吗?疑惑,就百度了一下

正文

之前在学习io流的时候,以为一个汉字就占一个字节。

其实那个是不对的,还需要考虑字符集编码的问题。所以,就不在原来的文章里改了,直接独立出来一篇,以便于能够记忆深刻。

英文字母在不同字符集编码下所占字节数

html
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
字节数 : 1;编码:GB2312

字节数 : 1;编码:GBK

字节数 : 1;编码:GB18030

字节数 : 1;编码:ISO-8859-1

字节数 : 1;编码:UTF-8

字节数 : 4;编码:UTF-16

字节数 : 2;编码:UTF-16BE

字节数 : 2;编码:UTF-16LE

中文汉字在不同字符集编码下所占字节数

html
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
字节数 : 2;编码:GB2312

字节数 : 2;编码:GBK

字节数 : 2;编码:GB18030

字节数 : 1;编码:ISO-8859-1

字节数 : 3;编码:UTF-8

字节数 : 4;编码:UTF-16

字节数 : 2;编码:UTF-16BE

字节数 : 2;编码:UTF-16LE

参考文章