网站高手帮帮忙.关于编码的问题..GBK 和utf8 和gb2312之间的关系....

来源:百度知道 编辑:UC知道 时间:2024/05/30 02:52:26
情况是这样的,这段时间我在做一个网站.在中途我发现gb2312的编码不能显示一些特称称号,于是我将以前的网站改成了utf8..

今天突然又发现一个新问题。我发现utf8编码的文本文件比gb2312编码的文本文件占的空间大.每个大十几K 几十K 算下来就成了一笔不小的流量开支.

我看百度的网页用的是GBK的编码.我想知道 GBK和GB2312有什么区别.
在GBK和gb2312和utf8之间 我应该怎么选择?

还有gb2312怎么显示特殊符号?
-------
我就是想知道 怎么在表单提交的时候 把特殊符号转换成实体 如以下: & #9617; & #9618; & #9644; & #9830;

不要告诉我用server.htmlencode 这个只能转换一部分符号到实体.我是知道的
不要告诉我自己编写函数. 符号太多了.我无法收集齐全部符号.实在太我了.
麻烦懂行的朋友 帮帮忙 谢了~~~~~~~~

怎么没人知道啊?

.................

GB2312的范围比GBK少很多,也就是说所涵盖的中文字符会比GBK格式的少,一旦遇到没办法识别的繁体字或者特殊符号就会乱码。所以一般来说我会选GBK格式来写页面。
至于UTF-8嘛,一般我写java的时候才会用到,这种一般适用于大型系统,或者跨语言系统,跨服务器等情况下使用。也就是说国外的ie浏览器也可以直接浏览到中文,而不需要安装中文语言支持包。
主要是看你的使用范围,还有就是数据库支持那种编码,这个要跟你数据库的编码对应上来,否则一样会存在乱码的情况。

这些编码最大的区别就是对中文和特殊符号的支持不同,虽然UTF-8占用空间比较大些,我觉得还是挺好的,文件中都统一用UTF-8编码。有些中文网站为了限制中文繁体,就设置成gb2312或gbk编码。

首先个人建议用GB2312

GB2312 字符集

GB2312又称为GB2312-80字符集,全称为《信息交换用汉字编码字符集·基本集》,由原中国国家标准总局发布,1981年5月1日实施,是中国国家标准的简体中文字符集。它所收录的汉字已经覆盖99.75%的使用频率,基本满足了汉字的计算机处理需要。在中国大陆和新加坡获广泛使用。

GB2312收录简化汉字及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母,共 7445 个图形字符。其中包括6763个汉字,其中一级汉字3755个,二级汉字3008个;包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个全角字符。

GB2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号。这种表示方式也称为区位码。

它是用双字节表示的,两个字节中前面的字节为第一字节,后面的字节为第二字节。习惯上称第一字节为“高字节” ,而称第二字节为“低字节”。“高位字节”使用了0xA1-0xF7(把01-87区的区号加上0xA0),“低位字节”使用了0xA1-0xFE(把01-94加上0xA0)。

以GB2312字符集的第一个汉字“啊”字为例,它的区号16,位号01,则区位码是1601,在大多数计算机程序中,高字节和低字节分别加0xA0得到程序