发布时间:2023-03-16 13:00
先来看看百度的解释:
一种针对Unicode的可变长度字符编码,又称万国码。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码Unicode字符。用在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)
utf8编码可以显示中文、英文以及其它语言,是一种国际化的标准,允许含BOM(可以理解为一中符号,来标识中文还是英文),但通常不含BOM,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码
UTF-8编码规则:如果只有一个字节则其最高二进制位为0;如果是多字节,其第一个字节从最高位开始,连续的二进制位值为1的个数决定了其编码的位数,其余各字节均以10开头。UTF-8转换表表示如下:
翻译为信息交换用汉字编码字符集,明显就是国家规定的标准,GB2312编码适用于汉字处理、汉字通信等系统之间的信息交换,通行于中国大陆
GBK是国家标准GB2312基础上扩容后兼容GB2312的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBD大。
GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换:
GBK、GB2312—>Unicode—>UTF8
UTF8—>Unicode—>GBK、GB2312
我的理解为国外的标准和国内的标准需要通过unicode这一介质进行转换
一般在编程的时候推荐同意编码方式,推荐utf-8.,因为GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBD大。现在的硬件设备已经很高级了,所以使用utf8还是绰绰有余的
今天在用记事本进行编辑的时候,在想着记事本用的是什么编码,就打开记事本的另存为,可以发现
所以去查了以下ANSI的编码,
在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字符。之后,又进行扩展,使用8 bits表示一个字符,可以表示256个字符,主要在原来的7 bits字符集的基础上加入了一些特殊符号例如制表符
后来,由于各国语言的加入,ASCII已经不能满足信息交流的需要,因此,为了能够表示其它国家的文字,各国在ASCII的基础上制定了自己的字符集,这些从ANSI标准派生的字符集被习惯的统称为ANSI字符集,它们正式的名称应该是MBCS(Multi-Byte Chactacter System,即多字节字符系统)。这些派生字符集的特点是以ASCII 127 bits为基础,兼容ASCII 127,他们使用大于128的编码作为一个Leading Byte,紧跟在Leading Byte后的第二(甚至第三)个字符与Leading Byte一起作为实际的编码。这样的字符集有很多,我们常见的GB-2312就是其中之一。
例如在GB-2312字符集中,“连通”的编码为C1 AC CD A8,其中C1和CD就是Leading Byte。前127个编码为标准ASCII保留,例如“0”的编码是30H(30H表示十六进制的30)。软件在读取时,如果看到30H,知道它小于128就是标准ASCII,表示“0”,看到C1大于128就知道它后面有一个另外的编码,因此C1 AC一同构成一个整个的编码,在GB-2312字符集中表示“连”。
由于每种语言都制定了自己的字符集,导致最后存在的各种字符集实在太多,在国际交流中要经常转换字符集非常不便。因此,提出了Unicode字符集,它固定使用16 bits(两个字节、一个字)来表示一个字符,共可以表示65536个字符。将世界上几乎所有语言的常用字符收录其中,方便了信息交流。标准的Unicode称为UTF-16。后来为了双字节的Unicode能够在现存的处理单字节的系统上正确传输,出现了UTF-8,使用类似MBCS的方式对Unicode进行编码。注意UTF-8是编码,它属于Unicode字符集。Unicode字符集有多种编码形式,而ASCII只有一种,大多数MBCS(包括GB-2312)也只有一种。
参考:http://blog.csdn.net/liyangbing315/article/details/5616643
后续继续更新
pandas 作图 统计_绘图和可视化 Matplotlib,Pandas,Sseaborn, Pyecharts(数据蛙视频课摘录)...
如何通过自定义spring invalidator注解校验数据合法性
web UI 自动化测试:Selenium 语法详解 史上最全
如何进行mysql下的严格模式修改,使得使用插入用户表方式添加新用户成功
uni-app路由拦截以及 uni-simple-router 路由、拦截、最优雅的解决方案
别找了诸位 【十二款超级好用的谷歌插件都在这】(确定不来看看?)
Element UI Table常用使用方法(header-cell-style;表头中的全选框取消;单选互斥功能;自动勾选toggleRowSelection方法)
Pyqt主要组件QFileDialog,QMessageBox,QInputDialog,QPushButton详解,附详细代码(持续更新中.....)