讲一下吧。真的很混乱。

解决方案 »

  1.   

    因为 Unicode 范围在 U+0000~U+007F 的字符 GBK 与 UTF-8 编码是完全一样的,都采用一个字节来表示。而汉字的 Unicode 范围基本上位于 U+4E00~U+9FFF 段中,这个段中的 UTF-8 采用三个字节来表示。而对于 GBK 来说,汉字是采用两个字节来表示的。拿“中”来说,GBK 存入时占用两个字节,即 D6 D0,而 UTF-8 使用 E4 B8 AD 三个字节来表示。
      

  2.   

    字符编码,就是把字符用二进制来标识。
    凑巧的是,对于英文字符来讲,GB2312和UTF-8,每个字母字符对应的编码是相同的。
    所以,对于英文字母字符来讲,GB2312和UTF-8和ACSII编码,用哪个进行编码或解码,其结果都是一样的。但是,对于中文汉字字符,就会有显著差别了。
    ACSII编码,不包含汉字,所以,不能对汉字进行编码。
    GB2312和UTF-8楼上已经解释的很清楚了。
      

  3.   

    这个好像和我的帖子有点关系,http://topic.csdn.net/u/20081025/15/e3c6d4fb-bdb1-4473-9353-d2aab3d033cc.html
      

  4.   

    用gb2312写入英文字符“abcdef”用utf-8能够正确读出来?写入中文就读不出来了。原理是什么?  首先对于英文字符来讲,GB2312和UTF-8,每个字母字符对应的编码是相同

    而对于中文处理。utf-8处理中文是有限的,因为它只能解码很少一部分中文,
    很多常用的中文字符它都没有,而gb2312和gbk是我们国家推出的,支持汉字很丰富。所以,对于楼主的问题。
    解决方案:
    用gb2312写数据,就用gb2312读数据就可以了。
    把utf-8改为gb2312就OK啦!
      

  5.   

    编码不一样,GBK是2个字节一个汉字,UTF-8是三个字节所以,同样的6个字节,你说是2个汉字还是3个汉字?
      

  6.   

    写了两个XML文件,都存储为UTF-8形式,但IE打开都报错.<?xml version="1.0" encoding="ASCII" ?>
    <book>a book</book><?xml version="1.0" encoding="GB2312" ?>
    <book>a book</book>
    既然英文字符的编码在ASCII,UTF-8,GB2312中都是一样的,那么为什么会报错呢?