网页编码简介

来源:互联网 发布:手机淘宝哪里看等级 编辑:程序博客网 时间:2024/05/20 00:49

首先介绍几种常见的字符集:

  1. ASCII 是基于常用英文的一套字符编码系统。每一个ASCII码与一个8位二进制数对应。
  2. GB2312和GBK GB2312是中国国家标准汉字信息交换用编码,简称国标码,采用两个字节表示一个字符,分别称为高位和低位,为了和ASCII码有所区别,中文字符每个字节最高位用1表示。GB2312字符集是几乎所有的中文系统和国际化软件都支持的中文字符集,也是最基本的中文字符集。GBK是在GB2312的基础上进行了一些扩展,对繁体中文,不常用汉字等进行了一些编码,但其不是国家标准,而只是规范。
  3. Unicode  使用了0~65525的双字节无符号数对每个字符进行编码,包括西欧,希腊,阿拉伯语,汉语,韩语,日语等进行了编码。
  4. UTF-8  对于0~127的ASCII字符,UTF-8用一个字节表示,如果字符对应Unicode码为0x0000,或在0x0080~0x007f,对应的UTF-8编码是两个字节,如果字符对应Unicode码在0x0800~0xffff,对应的UTF-8编码是三个字节。

在Java内部使用Unicode字符集表示字符,所以所有的字符都将被转换成Unicode字符在Java中执行。而由于不同应用方面对应的编码方式有很大不同,在各种编码之间互相转换的过程未必是可逆的,所以便产生了乱码的问题。

当从Unicode编码向某个字符集转换时,如果该字符集中没有对应的编码,则得到0x3f(即?)。从其他字符集向Unicode编码转换时,如果这个二进制数在该字符集中没有标识任何的字符,则得到的结果是0xfffd。

原创粉丝点击