浅谈utf-8和gb2313区别和选择

作者:袖梨 2022-06-25


最近碰到一个项目,要求使用gb2312,平常写代码时,用的编码都是utf-8,这两者有什么区别呢,我们又该如何选择呢

首先我们要理解编码是什么,编码是信息从一种形式或格式转换为另一种形式的过程也称为计算机编程语言的代码简称编码。用预先规定的方法将文字、数字或其它对象编成数码,或将信息、数据转换成规定的电脉冲信号。编码在电子计算机、电视、遥控和通讯等方面广泛使用。编码是信息从一种形式或格式转换为另一种形式的过程。

utf-8和gb2312是编码格式的一部分,查阅了一下有关utf-8和gb2312的资料:

utf-8:是一种针对Unicode的可变长度字符编码,又称万国码。由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。utf-8用1到4个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如日文,韩文)

gb2312:信息交换用汉字编码字符集。《信息交换用汉字编码字符集》是由中国国家标准总局1980年发布,1981年5月1日开始实施的一套国家标准,标准号是gb2312—1980。gb2312编码适用于汉字处理、汉字通信等系统之间的信息交换,通行于中国大陆;新加坡等地也采用此编码。中国大陆几乎所有的中文系统和国际化的软件都支持gb2312。

国内很多大的网站比如:百度搜索,新浪网,搜狗搜索引擎等用的编码都是utf-8,部分网站,学校官网则使用gb2312。

所以utf-8是国际编码,gb2312是中文编码,如果只是国内用户使用的话,则选择gb2312,但是国外访问gb2312编码的网站就会乱码,而utf-8是世界性通用代码,国内国外访问均不会出现乱码状况。

总结:从文字支持上说utf-8比GB2312要多。一般企业站看情况自己选择网页编码。在开发的时候就要确定使用哪种编码,以防网页乱码。同时在dedecms、帝国、phpcms等网站系统时,开发HTML和使用开源程序编码也要保持一致(前几天自己用gb2312的HTML在编码为utf-8的phpcms上套模板,就出现网页乱码情况)。当然个人比较倾向utf-8,感觉很少出现乱码状况。

相关文章

精彩推荐