各种编码之间的区别:ASCII、Unicode、UTF-8
2016-08-04 23:01
676 查看
ASCII编码,只有127个字母:大小写英文字母、数字和一些符号。只用一个字节(byte)来表示(8个bit)。
但是处理中文以及其他比较复杂的语言一个字节是显然不够的。再加上各国之间的自己制定的编码都不同,所以难免出现乱码。这时候,就需要组织出面处理问题了。于是乎,Unicode,应运而生。
Unicode标准,最常用的是用两个字节表示一个字符。现在的操作系统和绝大多数编程语言都支持Unicode。
但是问题又来了。在敲代码的时候,大家写的文本基本上全部是英文,如果用Unicode编码,那么需要比ASCII编码多一倍的储存空间,而且传输起来也比较困难。
于是,勤俭节约的传统美德酝酿出了“可变长度”的UTF-8编码。
3.UTF-8编码,把一个Unicode字符根据不同的数字大小编码成1-6个字节,英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
所以,如果传输的文本包括大量的英文字符,最好用UTF-8编码。
但是处理中文以及其他比较复杂的语言一个字节是显然不够的。再加上各国之间的自己制定的编码都不同,所以难免出现乱码。这时候,就需要组织出面处理问题了。于是乎,Unicode,应运而生。
Unicode标准,最常用的是用两个字节表示一个字符。现在的操作系统和绝大多数编程语言都支持Unicode。
但是问题又来了。在敲代码的时候,大家写的文本基本上全部是英文,如果用Unicode编码,那么需要比ASCII编码多一倍的储存空间,而且传输起来也比较困难。
于是,勤俭节约的传统美德酝酿出了“可变长度”的UTF-8编码。
3.UTF-8编码,把一个Unicode字符根据不同的数字大小编码成1-6个字节,英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
所以,如果传输的文本包括大量的英文字符,最好用UTF-8编码。
相关文章推荐
- Linux 与 Windows 对UNICODE 的处理方式
- Unicode详细分析解释
- ASP编码必备的8条原则
- Perl ASCII 字符判断
- vbs中将GB2312转Unicode的代码
- XML指南——XML编码
- C#中字符串编码处理
- ExtJS中文乱码之GBK格式编码解决方案及代码
- 将编码从GB2312转成UTF-8的方法汇总(从前台、程序、数据库)
- 程序员趣味读物 谈谈Unicode编码
- 文本文件编码方式区别
- 与ASCII码相关的C语言字符串操作函数
- C语言安全编码之数值中的sizeof操作符
- C#实现获取文本文件的编码的一个类(区分GB2312和UTF8)
- 常用字符集编码详解(ASCII GB2312 GBK GB18030 unicode UTF-8)
- VC中BASE64编码和解码使用详解
- C#实现Json转Unicode的方法
- 计算机中的字符串编码、乱码、BOM等问题详解
- 深入理解Python字符编码 推荐
- ASCII