gbk:

经实际测试和查阅文档,GBK是采用单双字节变长编码,英文使用单字节编码,完全兼容ASCII字符编码,中文部分采用双字节编码。

GBK 向下与 GB 2312 编码兼容,向上支持 ISO 10646.1国际标准,是前者向后者过渡过程中的一个承上启下的产物。ISO 10646 是国际标准化组织 ISO 公布的一个编码标准,即 Universal Multilpe-Octet Coded Character Set(简称UCS),大陆译为《通用多八位编码字符集》,台湾译为《广用多八位元编码字元集》,它与 Unicode 组织的 Unicode 编码完全兼容。ISO 10646.1 是该标准的第一部分《体系结构与基本多文种平面》。我国 1993 年以 GB 13000.1 国家标准的形式予以认可(即 GB 13000.1 等同于 ISO 10646.1)。

GBK编码,是在GB2312-80标准基础上的内码扩展规范,使用了双字节编码方案,其编码范围从8140至FEFE(剔除xx7F),共23940个码位,共收录了21003个汉字,完全兼容GB2312-80标准,支持国际标准ISO/IEC10646-1和国家标准GB13000-1中的全部中日韩汉字,并包含了BIG5编码中的所有汉字。GBK编码方案于1995年10月制定, 1995年12月正式发布,中文版的WIN95、WIN98、WINDOWS NT以及WINDOWS 2000、WINDOWS XP、WIN 7等都支持GBK编码方案。

编码,是指以固定的顺序排列字符,并以此做为记录、存贮、传递、交换的统一内部特征,这个字符排列顺序被称为“编码”。和中文字库有关的编码标准有:国标GB码、GBK码、港台BIG-5码等,不同编码的汉字字库都与汉字的应用有密切关系。

很多人在使用过程中,发现字不够用,因为大家使用的主要是GB编码字库,此编码标准只收录了6763个常用汉字,而GB字库以外大量汉字,只能通过方正女娲补字软件拼字或其它造字程序补字。尽管补出的汉字在字形上满足需要,但在字体风格、大小、结构方面难以协调统一,而采用手工贴图的方式补字,更不雅观。进而言之,如果用户建立信息系统,或需要查询新闻、出版内容时,靠补字是无法实现的。方正开发的GBK字库,将极大地缓解缺字现象。

从GB字库扩充到GBK字库,增加了1万4千多字。北大方正从1996年投入大量人力,开始做黑、宋、仿、楷GBK字库,并于1998年4月成为第一家通过国家标准认证部门组织的GBK字库鉴定的专业厂商。北大方正已将全部字体转换成GBK字库,共46款,其中18款字数达21003个,是拥有GBK字库款数最多的厂商。

ISO 10646 是一个包括世界上各种语言的书面形式以及附加符号的编码体系。其中的汉字部分称为“CJK 统一汉字”(C 指中国,J 指日本,K 指朝鲜)。而其中的中国部分,包括了源自中国大陆的 GB 2312、GB 12345、《现代汉语通用字表》等法定标准的汉字和符号,以及源自台湾的 CNS 11643 标准中第 1、2 字面(基本等同于 BIG-5 编码)、第 14 字面的汉字和符号。

utf-8:

UCS字符U+0000到U+007F(ASCII)被编码为字节0×00到0x7F(ASCIⅡ兼容)。这意味着只包含7位ASCIl字符的文件在ASCIⅡ和UTF-8两种编码方式下是一样的。

所有大于0x007F的UCS字符被编码为一个有多个字节的串,每个字节都有标记位集。因此,ASCIl字节(0x00-0x7F)不可能作为任何其他字符的一部分。表示非ASCIl字符的多字节串的第一个字节总是在0xC0到0XFD的范围里,并指出这个字符包含多少个字节。多字节串的其余字节都在0x80到0xBF范围里。这使得重新同步非常容易,并使编码无国界,且很少受丢失字节的影响。

UTF-8编码字符理论上可以最多到4个字节长,然而16位BMP字符最多只用到3字节长,Bigendian UCS-4字节串的排列顺序是预定的,字节0xFE和OxFF在UTF-8编码中从未用到。

UTF-8使用1~4字节为每个字符编码:

#一个US-ASCIl字符只需1字节编码(Unicode范围由U+0000~U+007F)。

#带有变音符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文等字母则需要2字节编码(Unicode范围由U+0080~U+07FF)。

#其他语言的字符(包括中日韩文字、东南亚文字、中东文字等)包含了大部分常用字,使用3字节编码。

#其他极少使用的语言字符使用4字节编码

注:每种编码可能有多个编码范围,每个编码范围间,以空格作为每个字节的分隔符。例如UTF8-3的第一个编码,其第一个字节取值必须为\xE0,第二个字节范围为\xA0-\xBF,第三个字节为\x80-\xBF。

优缺点

优点

UTF-8编码可以通过屏蔽位和移位操作快速读写。字符串比较时strcmp()和wcscmp()的返回结果相同,因此使排序变得更加容易。字节FF和FE在UTF-8编码中永远不会出现,因此他们可以用来表明UTF-16或UTF-32文本(见BOM) UTF-8 是字节顺序无关的。它的字节顺序在所有系统中都是一样的,因此它实际上并不需要BOM。 [1]

缺点

你无法从UNICODE字符数判断出UTF-8文本的字节数,因为UTF-8是一种变长编码它需要用2个字节编码那些用扩展ASCII字符集只需1个字节的字符 ISO Latin-1 是UNICODE的子集,但不是UTF-8的子集 8位字符的UTF-8编码会被email网关过滤,因为internet信息最初设计为7位ASCII码。因此产生了UTF-7编码。 UTF-8 在它的表示中使用值100xxxxx的几率超过50%, 而现存的实现如ISO 2022, 4873, 6429, 和8859系统,会把它错认为是C1 控制码。因此产生了UTF-7.5编码。

asccl:

由ASCII码表我们可以做如下总结(以下说明均以10进制表示法):

共定义了128个字符,其中33控制字符个字符无法显示,剩余95个可显示字符
    控制字符包含0~31的32个字符,加上一个删除符(127),共33个
    可显示字符包含32~126的95个字符(包含数字、大小写字符、英文标点符号等)
    数字1~9对应的ASCII码为48~57
    大写字母A~Z对应的ASCII码为65~90
    小写字母a~z对应的ASCII码为97~122

ASCII码缺点

ASCII的局限在于只能显示26个基本拉丁字母、阿拉伯数目字和英式标点符号,因此只能用于显示现代美国英语(而且在处理英语当中,即使会违反拼写规则,外来词如naïve、café、élite等等时,所有重音符号都必须去掉)。虽然EASCII解决了部分西欧语言的显示问题,但对更多其他语言依然无能为力。因此有其他的扩展方案,如EASCII和ISO/IEC 8859,现在的软件系统大多采用Unicode。

EASCII是将ASCII码由7位二进制扩充为8位而成。EASCII码比ASCII码扩充出来的符号包括表格符号、计算符号、希腊字母和特殊的拉丁符号。

原来的ASCII码二进制表示范围为0000 0000~0111 1111(共128个字符),可以看到高八位都是0,是没有用到的。

而新增的EASCII二进制表示范围为1000 0000~1111 1111(十进制为129~255,共128个字符),可以看到高八位都是1。

 url:

URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。

也可认为由4部分组成:协议、主机、端口、路径

URL的一般语法格式为:

(带方括号[]的为可选项):

protocol :// hostname[:port] / path / [;parameters][?query]#fragment

URL是由一串字符组成,这些字符可以是字母,数字和特殊符号。一个URL可以用多种方法来表现,例如:纸上的字迹,或者是用字符集编码的八位字节序列。URL的解释仅取决于所用字符的特性。在大多数URL方案中,都是使用URL不同部分的字符序列来代表因特网协议中所使用的八位字节序列。例如,在ftp方案中主机名,目录名和文件名就是这样的八位字节序列,它们用URL的不同部分代表。在这些部分里,一个八位字节数可以用这样的字符来表示:该字符在US—ASCII[20]编码字符集中的编码是这个八位字节数。另外,八位字节数可以被编成如下形式的代码:“%”后加两个十六进制数字(来自于“0123456789ABCDEF”),这两个十六进制数字代表了这八位字节数的值。(字符“abcdef”也可以用于十六进制编码)。如果存在下面的情况:八位字节数在US-ASCII字符集中没有相应的可显示字符,或者使用相应字符会产生不安全因素,或者相应的字符被保留用于特定的URL方案的解释,那么它们必须被编成代码。

gbk utf-8 asccl url相关推荐

  1. 帝国CMS7.5响应式后台美化模板 支持GBK+UTF

    介绍: 帝国CMS7.5响应式后台美化模板 支持GBK+UTF 1.支持帝国CMS7.5版本,GBK.UTF编码 2.采用ZUI前端框架开发 3.响应式布局,兼容多终端分辨率,包含:19201080, ...

  2. AMIGO小清新资讯(GBK+UTF)DZ仿flyme模板

    AMIGO小清新资讯(GBK+UTF)DZ仿flyme模板 地址 https://www.piaodoo.com/10362.html

  3. ASCII Unicode GBK UTF的联系

    快下班时,爱问问题的小朋友Nico又问了一个问题: "sqlserver里面有char和nchar,那个n据说是指unicode的数据,这个是什么意思." 并不是所有简单的问题都很 ...

  4. 女神模特网站源码_套图下载 GBK+UTF Discuz模板

    介绍 1.模板名称:"模特女神/套图下载" 网站页面宽度1180px,网站代码工整简洁seo优化良好,让您网站更佳汇聚人气,助您网站成功! 2.模板采用DIY数据读取,方便新手老手 ...

  5. DZ模板 动漫视频_二次元4 商业版(GBK+UTF) 【价值298】

    下载链接 https://2020xbl.52msr.cn/thread-139-1-1.html

  6. url编码混乱下下载工具如何应对

    近来实现了一个Http file server,发现不同浏览器下载文件时url采用的编码是不同的. -------------------------------------------------- ...

  7. spring mvc字符编码过滤器 CharacterEncodingFilter ,添加例外url

    前言 spring 4.3.4.RELEASE CharacterEncodingFilter : Spring MVC 提供的字符集过滤器,用于处理项目中的乱码问题 项目比较老,大部分url使用的是 ...

  8. 【script】python 中文汉字与url的转换

    punycode 编码(推荐) punycode 编码又称 域名代码,是实现 中文汉字转英文字母 的一种编码方式 中文汉字 转 url import reurl = 'www.示例.com' # 正则 ...

  9. JavaScript PHP 通过URLEncode字串判断其编码是UTF-8还是GBK

    例如给出字串: %B4%BA 或 %E6%98%A5 如何判断应该是使用UTF-8还是GBK进行URLDecode? 思路1 通用方法: 假定它是 GBK 的编码 ,则将其转换成 utf-8 然后再转 ...

  10. javascript gbk en/decode

    备份下 http://www.1kjs.com/lib/widget/gbk/ 1 /**//**//**//**//**//**//* 2 ** ========================== ...

最新文章

  1. JavaScript核心语法学习部分(四)
  2. 关于网络唤醒远程开机的方法
  3. 分类模型的评估方法-精确率(Precision)
  4. 如果你是一位资深的玩机人士,那么你不能错过它——uTools
  5. yum mysql 如何启动_CentOS7用yum安装MySQL与启动
  6. 获取文件当前地址GetModuleFileName函数
  7. 守护冬奥安全 从北京网络安全大会开始
  8. 【NOIp模拟赛】种花
  9. C语言求1000以内完数
  10. MDM平台UI升级功能说明
  11. 为什么快捷指令无法将媒体转换为文本_快捷指令自动化可以做什么,不能做什么?...
  12. sphinxapi.php 详解,【转】Sphinx PHP api全文检索的例子
  13. 永不消逝的电波(一):无线电入门篇
  14. jquery获取地址栏参数
  15. K-mer特征提取one-hot编码
  16. 机器学习规则学习_使用机器学习发现动作规则
  17. 软件测试好学吗 入门还是很好学的,但想要深造就还是要费功夫
  18. 小尺寸2.4G SMD贴片天线方案 CA-C03 CrossAir贴片天线
  19. Python2中使用input出现的NameError: name ‘***‘ is not defined问题原因及解决办法
  20. 基于Arduino IDE开发的LD3320语音识别模块

热门文章

  1. 苏宁易购关键词搜索商品方法
  2. 计算机ip变,为什么电脑IP地址总是自动改变
  3. bat文件转exe工具分享
  4. 如何生成SSH key
  5. 网络安全扫盲贴 史上最全网络安全问题解答
  6. Python-Django-入门
  7. 遥感植被指数128个
  8. InTouch 如何备份驱动的通信配置
  9. 树莓派默认密码_树莓派介绍:没有显示器,怎样远程控制树莓派?
  10. 免费开源的100套Echarts大屏数据可视化模板分享