UTF-8与GBK的区别

UTF-8是一种国际化标准的文字编码,我们已知Windows系统程序已经将最初的UTF-8转向Unicode,而GBK的存在是为了中国国情而创造的,不过GBK也将伴随着中文字符的一直流传下去。

简单而言:

GBK: 专门用来解决中文编码,双字节。

是在国家标准GB2312基础上扩容后兼容GB2312标准。

包含全部中文字符。

UTF-8: 解决国际上制度的一种多字节编码,对英文使用8位(1个字节),中文使用24位(3个字节)来编码。

对于英文字符较多的论坛适用于UTF-8节省空间。

包含全世界所有国家需要用到的字符。

GBK和UTF-8文字编码的特点:

  GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其最高位都定成1。

  至于UTF-8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。对于英文字符较多的论坛则用UTF-8节省空间。

  GBK和UTF-8文字编码的区别:

  GBK包含全部中文字符;

  UTF-8则包含全世界所有国家需要用到的字符。

  GBK是在国家标准GB2312基础上扩容后兼容GB2312的标准;(好像还不是国家标准)

  UTF-8编码的文字可以在各国各种支持UTF8字符集的浏览器上显示。

  比如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,而无需他们下载IE的中文语言支持包。

  所以,对于英文比较多的论坛 ,使用GBK则每个字符占用2个字节,而使用UTF-8英文却只占一个字节。

  注意:

  UTF-8版本虽然具有良好的国际兼容性,但中文需要比GBK/BIG5版本多占用50%的数据库存储空间,因此并非推荐使用,仅供对国际兼容性有特殊要求的用户使用。

  总结:

  GBK就是在保存你的帖子的时候,一个汉字占用两个字节。外国人看会出现乱码,此为我中华为自己汉字编码而形成之解决方案。

  UTF8就是在保存你的帖子的时候,一个汉字占用3个字节。但是外国人看的话不会乱码,此为西人为了解决多字节字符而形成之解决方案。

  ASCII(ISO-8859-1)是鼻祖,最简单的方式,字节高位为0。

  GB2312、GBK、GB18030,这几个是中文编码方式,并向下兼容。GB2312包含7000多个汉字和字符,GBK包含21000多个,GB18030更厉害,到了27000多个。他们都是用2个字节来表示一个汉字。跟ascii是怎么区分的呢?如果高字节的高位为1(也就是高字节大于127),就表示是汉字,低字节并无明显特征。

  Unicode是统一编码,它建立了一个全世界统一的码表。世界上的所有文字,在这张码表中都是唯一的。

  UTF-8是Unicode的一种存储、传输方式。它将整个Unicode码表分为3部分。

  0000 - 007F 这部分是最初的ascii部分,按原始的存储方式,即0xxxxxxx。

  0080 - 07FF 这部分存储为110xxxxx 10xxxxxx。

  0800 - FFFF 这部分存储为1110xxxx 10xxxxxx 10xxxxxx。

  因此,一个汉字究竟被存储为什么,就需要:先查unicode码表,然后根据在码表的位置进行计算。例如:“电”字,在码表中是3575,计算成utf8就是E794B5,而在GB2312的码表中为B5E7。

  UTF-8的好处:兼容ASCII,存储英文文件都是单字节,文件小。当然,当以存中文为主时就变成了3字节编码了,比GB系列还大!如何标明一个文件是utf8格式呢?这个标记是可选的:EF BB BF。比如,用windows自带的记事本创建一个utf8格式的文件,就会加上这个标记。但是,如果用ultraedit创建utf8文件,并不会加上这个标记。这个标记有个术语,叫做BOM(Byte Order Mark)。不带BOM的utf8文件和GB2312文件怎么区分呢?我也不知道。唯一能想到的办法就是:先用一种试,如果出现乱码,就用另一种再试。

  简言而知,GBK编码方式的编码是以中国国情而创造的,在国际上的兼容性不好,这也是为什么大多数的网页是使用UTF-8编码而不是GBK。

  • 20
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: GBKUTF-8 是两种常见的字符编码方式,其中GBK 是一种支持中文字符的字符编码方式,适用于中文常用字符的存储和传输。而 UTF-8 则是一种通用的字符编码方式,不仅支持中文,还支持其他语言,并且可变长编码方式使得 UTF-8GBK 更加灵活。 如果需要将GBK 中的字符转换为 UTF-8 编码方式,可以使用在线转换工具实现。在线工具可以简单地将输入的字符转换为 UTF-8 编码,并将输出文本呈现出来。这样就可以确保所有输入的字符都将正确地转换为 UTF-8 编码方式,而无需自己手动进行编码转换。 以转换汉字“中文”为例,用户只需要将“中文”输入在线工具中的GBK 输入框中,然后点击转换按钮即可。转换完成后,用户可以看到“中文”对应的 UTF-8 编码,同时产生的输出文本也会显示为“中文”。 总的来说,借助在线的 GBKUTF-8 工具,用户可以轻松地将GBK 编码方式转换为 UTF-8 编码方式,从而满足各种实际需求。 ### 回答2: GBKUTF-8是常用的字符编码方式。GBK编码是中文字符集编码,包含中文汉字、拉丁字母等字符;而UTF-8是国际通用字符集编码,包含大部分世界上使用的字符。 当我们需要将GBK编码的文本转换成UTF-8编码时,可以通过在线转换工具完成。在线GBKUTF-8转换工具具有操作简单、易用性强、无需下载安装等诸多优点。 首先,我们需要选择可靠的在线转换工具,如在线转换网或爱资料转换工具等网站。然后,在网站上找到GBKUTF-8工具页面,将需要转换的文本粘贴到输入框中,设置转换选项,如转换后换行、保留BOM、转换格式等,最后点击“转换”按钮即可得到UTF-8编码的文本。 需要注意的是,转换时需要保证待转换文本在原编码下已经正确,否则会导致转换后的文本出现乱码等问题。另外,在使用在线转换工具时,应注意避免转换大量机密性或重要性文档,以免造成损失。 总之,通过在线GBKUTF-8转换工具,我们可以轻松实现字符编码转换,方便用户处理不同编码格式的文本。 ### 回答3: GBKUTF-8是两种字符编码方式,GBK主要用于中文字符集,而UTF-8则是一种可变长度的Unicode编码,可以表示世界上所有语言字符。由于互联网的普及,现在越来越多的网站都采用UTF-8编码。 如果在网站制作过程中,遇到GBK编码的网页需要转换为UTF-8编码,有两种方法可以实现。一种是手动转换,需要开发者将所有的文本复制到文本编辑器中,将编码格式从GBK转换为UTF-8,再将文本复制到网页中保存。 另外一种方法是使用在线工具进行转换,例如常用的GBKUTF-8在线转换工具。使用这种方法可以大大减少手动操作,让转换更加便捷和快速。 使用在线工具进行字符编码转换的步骤非常简单,只需要将需要转换的文件上传到工具中,然后选择需要的转换方式,这里选择GBKutf-8编码。接下来只需要等待转换完成即可,转换后的文件可以直接下载保存到本地。 总之,使用GBKUTF-8在线转换工具可以大大缩短时间,提高工作效率,在线转换工具也保证了数据的安全性和准确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值