utf8 utf-8 gbk gb2312的区别

本文主要介绍在实际应用中我们常用的几种编码的区别,其实只是记下来以供自己日后好找而已,哈哈~

gb2312

GB其实是“国标”的意思,GB2312编码(GB2312-80标准)适用于汉字处理、汉字通信等系统之间的信息交换,通行于中国大陆;新加坡等地也采用此编码。中国大陆几乎所有的中文系统和国际化的软件都支持GB2312。

简单来说:GB2312是简体汉字,不包括繁体字,甚至有些使用频率非常低的汉字在这个字符集里面也没有。

gbk

GBK其实是“国标扩展”的意思,GBK编码,是在GB2312-80标准基础上的内码扩展规范,完全兼容GB2312-80标准,支持国际标准ISO/IEC10646-1和国家标准GB13000-1中的全部中日韩汉字,并包含了BIG5编码中的所有汉字。

简单来说:简单的说,GBK是所有汉字,包含简体和繁体,还有日文的假名。

UTF-8

UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。它是一种全国家通过的一种编码,支持所有的语言,如果你的网站涉及到多个国家的语言,那么建议你选择UTF-8编码。

这里注意的是,它和UTF-16不同,UTF-16比起UTF-8,好处在于大部分字符都以固定长度的字节 (2字节) 储存,但UTF-16却无法兼容于ASCII编码。
而对于UTF-8而言,英文字符是用一个字节保存的,它可以兼容ascii码,中文一般来说用三个字节保存,少部分也用四个字节保存。

UTF-8和utf8的区别

“UTF-8”是标准写法,在不区分大小写的情况下也可以写成“utf-8”。“UTF-8”也可以把中间的“-”省略,写成“UTF8”。一般程序都能识别,但也有例外,为了严格一点,最好用标准的大写“UTF-8”。

特例:在MySQL数据库中只能使用“utf8”,在MySQL的命令模式中只能使用“utf8”,不能使用“utf-8”,这也没有说为什么,只是mysql定义的时候使用的是utf8,其实都是同一个东西,名字不同而已。

结论:只有在MySQL中可以使用“utf-8”的别名“utf8”,但是在其他地方一律使用写“UTF-8”。

你可能感兴趣的:(琐碎知识)