前端也要知道的http(二)---编码方式
ASCII
全称:American Standar Code fr Information Interchange, 美国信息交换标准编码
内容:
- 大小写字母、数字、标点符号、空格
表示形式:
- 用连续的字节状态表示,但不包括拓展的字符集
长度:
- 1个字节 8位
数目大小:
- 从最初的0~127到后来的0~255,255之后的部分被称之为“拓展字符集”。
- 后再在发展,是字符集大小终于达到阈值,统一规定0~127不变,后面的都称之为“拓展字符集”
GB2312
简介:
- 名称为:信息交换用汉字编码字符集,由中国国家标准总局1980年首次发布
- GB2312是国人对ASCII字符集的拓展,前0-127不变
- 利用连续两个超过127的字符表示一个汉字,前一个字节(高字节)从0xA1到0xF7中取出,后一个字节(低字节)从0xA1到0xFE。
内容:
- 组合成大约7000个简体汉字,也加入数字符号,罗马希腊字母,日文假名等,连原有的字母、数字、标点、空格也重新编成两个字节长
- 127以上就是“全角字符”,0~127的叫“半角字符”
长度:
- 0~127一个字节 8位(半角),127以后 两个字节 16位(全角)
GBK 与 GB18030
简介:
- GBK全称《汉字内码扩展规范》(GBK即“国标”、“扩展”汉语拼音的第一个字母,英文名称:Chinese Internal Code Specification
- GBK是对GBK2312的改进,GB18030是对GBK的改进
内容:
- 更多的汉字,繁体字,符号,GB18030还包括部分少数民族文字
长度:
- 0~127一个字节 8位(半角),127以后 两个字节 16位(全角)
UNICODE
简介:
- 全称“Universal Multiple-Octet Coded Character Set”,简称UCS
- 为应对各国都弄出的五花八门的编码方式导致乱了套,ISO废了所以的地区性编码方案,搞出一个包括地球上所有文化,字母和符号的编码
内容:
- 地球上所有文化,字母和符号的编码
长度:
- 全部两个字节 16位
- 但是0-127位 的 前八位都是0
注意:
- Unicode在制定的时候,没有考虑与现有的任何一种字符编码方案兼容,所以使得Unicode与GBK 在哈子的内码上的编排顺序是完全不一样的。
- 没有一种简单直接的算术方法能够吧Unicode编码与另一种编码进行转换,这种转换必须通过查表来进行。
UTF-8, UTF-16
简介:
- 8-bit Unicode Transformation Format 是一种针对Unicode的可变长度字符编码,又称万国码。
- 为了解决UNICODE在网络上传输的问题,面向传输的UTF(UCS Transfer Format)标准出现
- UTF-8每次8位传输数据,UTF16每次16个位,只不过为了传输时的可靠性
- 从UNICODE到 UTF时并不是直接的对应,而是要通过一些算法和规则来转换。
长度:
- UTF-8 汉字通常占3个字节,扩展B区占4个
- UTF-16编码,通常汉字占两个字节,CJKV扩展B区、扩展C区、扩展D区中的汉字占四个字节
Base64
简介:
- 某些系统只能使用ASCII,Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法,例如图片、文档,特别适合在http,mime协议下快速传输数据。
参考文章:http://www.cnblogs.com/yanze/p/6055505.html 作者:炎泽