网站首页 > 资源文章 正文
简洁的语言说简单的事
Unicode 字符集
Unicode 是国际组织制定的可以容纳世界上所有文字和符号的字符集,它定义了文字和二进制的对应关系,并为每个字符分配了一个唯一的编号。编号靠前的需要一个字节存储,编号靠后的需要三个字节才能存储。
注意:Unicode 只是一个字符集,如果要将字符存储到内存,还需要使用UTF字符编码,它规定了如何将文字的编号存储到内存中
UTF 编码
UTF 是 Unicode Transformation Format 的缩写,意思是“Unicode转换格式”
Unicode 可以使用的编码有三种,分别是:
- UTF-8:一种变长的编码方案,使用 1~6 个字节来存储;
- UTF-16:介于 UTF-8 和 UTF-32 之间,使用 2 个或者 4 个字节来存储,长度既固定又可变。
- UTF-32:一种固定长度的编码方案,不管字符编号大小,始终使用 4 个字节来存储;
UTF-8
utf-8 编码规则很简单:如果只有一个字节,那么最高的比特位为 0,兼容ASCII 编码;如果有多个字节,那么第一个字节从最高位开始,连续有几个比特位的值为 1,就使用几个字节编码,剩下的字节均以 10 开头。
- 单字节编码:0xxxxxxx
- 双字节编码:110xxxxx 10xxxxxx
- 三字节编码:1110xxxx 10xxxxxx 10xxxxxx
- 四字节编码:11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
UTF-16
UTF-16 将Unicode字符集分成两部分,第一部分对于 Unicode 编号范围在 0 ~ FFFF 之间的字符,使用两个字节存储,并且直接存储 Unicode 编号,不进行编码转换。第二部分对于 Unicode 编号范围在 10000~10FFFF 之间的字符,使用四个字节存储
- 双字节:xxxxxxxx xxxxxxxx
- 四字节:110110xx xxxxxxxx 110111xx xxxxxxxx
UTF-32
UTF-32 是固定长度的编码,始终占用 4 个字节,足以容纳所有的 Unicode 字符,所以直接存储 Unicode 编号即可,不需要任何编码转换。浪费了空间,提高了效率
猜你喜欢
- 2024-09-11 为什么不要在MySQL中使用UTF-8编码方式
- 2024-09-11 如何修改mysql数据库的默认编码格式为utf-8?
- 2024-09-11 IDEA设置编码为UTF-8(idea设置编码格式)
- 2024-09-11 千万不要在mysql中使用utf8(千万不要在茶水间说老板坏话小说)
- 2024-09-11 文本编码转换方法:如何从UTF8到ANSI批量处理的实例解析
- 2024-09-11 Golang学习 - unicode/utf8 包(golang gbk)
- 2024-09-11 漫画:什么是字符集和编码?ASCII、UTF-8、UTF-16又是什么?
- 2024-09-11 写代码注意了,千万不要在 MySQL 中使用 UTF-8
- 2024-09-11 「漫画」什么是字符集和编码?ASCII、UTF-8、UTF-16又是什么?
- 2024-09-11 在MySQL中你是否使用过"utf8",有没有遇到这样的bug那就要注意了
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)