⼀个英⽂字母,⼀个中⽂各占多少字节
⾸先不同编码,所占字节数不同。
1,ASCII码:⼀个英⽂字母(不分⼤⼩写)占⼀个字节的空间,⼀个中⽂汉字占两个字度节的空间。
2,UTF-8编码:⼀个英⽂字符等于⼀个字节,⼀个中⽂(含繁体)等于三个字节。中⽂标点占三个字节,英⽂标点占⼀个字节
3,Unicode编码:⼀个英⽂等于两个字节,⼀个中⽂(含繁体)等于两个字节。中⽂标点占两个字节,英⽂标点占两个字节
字节是指Byte
字符是⼀种数据类型,通常是char,更具不同语⾔,占据不同字节⼤⼩。
Java:
(1)、英⽂和数字占⼀个字节
(2)、中⽂占⼀个字符,也就是两个字节
(3)、字符 不等于 字节。
字符(char)是 Java 中的⼀种基本数据类型,由 2 个字节组成( java采⽤unicode编码,故均占两个字节),范围从 0 开始,到 2^16-1。
字节是⼀种数据量的单位,⼀个字节等于 8 位。所有的数据所占空间都可以⽤字节数来衡量。例如⼀个字符占 2 个字节,⼀个 int 占 4 个字节,⼀个 double 占 8 个字节 等等。
1字符=2字节;
1Byte=8bit
b:位;B:字节
1kb=1024 位1kB=1024 字节
1 Byte = 8 Bits
1 Kilobyte (KB) = 1024 Bytes
1 Megabyte (MB) = 1024 KB
1 Gigabyte (GB) = 1024 MB
1 Terabyte (TB) = 1024 GB
1 Petabyte (PB) = 1024 TB
1 Exabyte (EB) = 1024 PB
1 Zettabyte (ZB) = 1024 EB
1 Yottabyte (YB) = 1024 ZB
python
中⽂和符号:
print(type('中⽂'.encode('utf-8')))#输出为bytes类型
执⾏结果:
<class'bytes'>
print(type('中⽂'.encode('gbk')))
执⾏结果:
<class'bytes'>
print(len('中⽂'.encode('utf-8')))#输出⼏个字节
执⾏结果:
6
ascii共有多少个字符print(len('中⽂'.encode('gbk')))
执⾏结果:
4
print(len(',。'.encode('gbk')))
执⾏结果:
4
英⽂字母和符号:
print(type('ab'.encode('utf-8')))
执⾏结果:
<class'bytes'>
print(len('ab'.encode('utf-8')))
执⾏结果:
2
print(len(',.'.encode('gbk')))
执⾏结果:
2
总结
utf-8编码:⼀个中⽂包含繁体字等于三个字节,⼀个英⽂字符等于⼀个字节。gbk编码:⼀个中⽂包含繁体字等于⼆个字节,⼀个英⽂字符等于⼀个字节。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论