美文网首页
编码问题

编码问题

作者: 少冰三hun甜 | 来源:发表于2016-09-02 00:17 被阅读26次

文件的编码


编码的发展简史:

美国最早定制了适合美国国内使用的字符编码规则,即ASCII码(American Standard Code forInformation Interchange,美国信息互换标准代码),后面欧洲各国又对其加以扩展以方便使用。
特点:所有字母符号都用一个字节(八位)表示, 1到127号连续的字节状态表示所有的空格、标点符号、数字、大小写字母。128到255号字节用来表示”扩展字符集”


中国人民通过对ASCII 编码的中文扩充改造(不够用),产生了** GB2312** 编码,
可以表示6000多个常用汉字。
汉字实在是太多了(还是不够用),包括繁体和各种字符,于是产生了 GBK 编码,
它包括了 GB2312 中的编码,同时扩充了很多。
**特点:
GB2312 :
GB2312 是对 ASCII 的中文扩展,个小于127的字符的意义与原来相同,但两个大于127的字符连在一起时,就表示一个汉字,前面的一个字节(称之为高字节)从0xA1用到 0xF7,后面一个字节(低字节)从0xA1到0xFE。
GBK: 
不要求低字节一定是127号之后的内码,只要第一个字节是大于127就固定表示这是一个汉字的开始
**


中国是个多民族国家,各个民族几乎都有自己独立的语言系统,
为了表示那些字符,继续把 GBK 编码扩充为 GB18030 编码。


仿照中国,创造自己的语言编码,由此产生了 GB2312, BIG5, JIS
等各自的编码标准。这些使用 2 个字节来代表一个字符的各种汉字延伸编码
方式,称为** ANSI **编码。如果你不安装相应的编码,就无法解释相应编码想
表达的内容。


后来ISO 的组织创造了一种编码 UNICODE ,这种编码非常大,大到可以容纳世界上任何一个文字和标志。所以只要电脑上有UNICODE 这种编码系统,无论是全球哪种文字,只需要保存文件的时候,保存成
UNICODE 编码就可以被其他电脑正常解释。
UNICODE 在网络传输中,出现了两个标准 UTF-8 和 UTF-16,分别每次传输 8个位和 16个位。

因为 UTF-8 等编码体积比较大,占电脑空间比较多,如果面向的使用人群绝大部分都
是中国人,用 GBK 等编码也可以。但是目前的电脑来看,硬盘都是白菜价,电脑性能也已经
足够无视这点性能的消耗了。所以推荐所有的网页使用统一编码:UTF-8


注意:
1. 从ASCII、 GB2312、GBK到GB18030,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码 中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为0。按照程序员的称呼,GB2312、GBK到GB18030都属于双字节字符集 (DBCS)。
**2. Unicode只与ASCII兼容(更准确地说,是与ISO-8859-1兼容),与GB码不兼容。例如“汉”字的Unicode编码是6C49,而GB码是BABA。

Unicode规定了怎么用2字节(也有4字节)表示各种文字。而怎样传输这些编码,是由UTF(Unicode TransformationFormat)规范规定的,
常见的UTF规范包括UTF-8、UTF-7、UTF-16**

总结:
ASCII码占一个字节;

GB2312和GBK码英文字符占一个字节,中文字符占2个字节;
UTF-8编码下字符所占字节数从1到6个不等,英文字符占一个字节,中文字符通常占3个字节。

相关文章

  • Tech Base

    编码问题,参考这个博客,足够了编码问题

  • 编码问题

    将unicode转换成字符串,即json.dumps(xxx),Python读取的字符串已经是unicode编码,...

  • 编码问题

    关于ASCII,GBK,Unicode,utf-8,base64等编码的问题,我就不重复造轮子了,看到一篇文章:字...

  • 编码问题

    1. 输出结果是16进制---不太懂,来自百度---原网址 2. json格式 输出结果如下:{'city': ...

  • 编码问题

    GBK是简体中文和繁体中文的综合版 简体中文 gb2312 繁体 big5 乱码就是编码解码不一致 https并不...

  • 编码问题

    在 android studio 中直接创建项目和导入其他项目都会有一个文件编码设定的问题,在 android s...

  • 编码问题

    在每个Servlet的开头加入: request.setCharacterEncoding("utf-8");re...

  • 编码问题

    文件的编码 编码的发展简史: 美国最早定制了适合美国国内使用的字符编码规则,即ASCII码(American St...

  • 编码问题

    编码问题----插入mysql汉字出错 问题: 数据库更改之后,仍不能插入汉字 原因: 1.数据库...

  • 编码问题

    假定一种编码的编码范围是a ~ y的25个字母,从1位到4位的编码,如果我们把该编码按字典序排序,形成一个数组如下...

网友评论

      本文标题:编码问题

      本文链接:https://www.haomeiwen.com/subject/kfehettx.html