首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

字符集与字符编码的区别与演进(ASCII、GBK、UNICODE)

演进:GB2312(2字节)→扩展繁体字→GBK(2字节)→扩展少数民族中日韩等→GB18030国家标准(4字节)。...注意GBK都是向下兼容的,即GB18030兼容GB2312,因为使用的编码位置没有重叠。 1.3.1 大五码 Big5码是一套双位元组字符集,使用了双八码储存方法,以两个字节来安放一个字。...具体来说,定义的是下列字节: 范围 第1字节 第2字节 编码数 字数 水准GBK/1 A1–A9 A1–FE 846 717 水准GBK/2 B0–F7 A1–FE 6,768 6,763 水准GBK/...3 81–A0 40–FE (7F除外) 6,080 6,080 水准GBK/4 AA–FE 40–A0 (7F除外) 8,160 8,160 水准GBK/5 A8–A9 40–A0 (7F除外) 192...2.3 GBK 事实上我们使用的GBK、GB18030都是标准,但由于我们的标准只对应一套特定的字符集,所以可以认为GBK就是字符集

1.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

警示:AL32UTF8字符集不是ZHS16GBK字符集的超集

今天有客户向我咨询:数据库由ZHS16GBK字符集修改为AL32UTF8字符集,发现中文的数据中小部分出现乱码,客户认为AL32UTF8明明可以支持更多的文字,不应该出现这样的情况才对。...不过,之前也一直有个误区,我们都知道AL32UTF8是可以支持多国语言的字符集,对于中文字节存储占用空间比ZHS16GBK多,然后第一反应就认为AL32UTF8应该是ZHS16GBK的超集。...这就说明我们要改的AL32UTF8字符集并不是ZHS16GBK的超集。...而客户端是Windows,chcp结果是936,也就是ZHS16GBK,这也进一步说明了ZHS16GBK和AL32UTF8字符集的不同。...同时实验还验证,如果数据库字符集本身是AL32UTF8,想修改成为ZHS16GBK字符集,也是一样的情况,需要加internal_use参数才可以转换,也就是说这种转换一样可能出现乱码,不过这个情况反倒好理解

1.7K60

GB2312、GBK、GB18030 这几种字符集的主要区别是什么?

1 GB2312-80 GB 2312 或 GB 2312-80 是中国国家标准简体中文字符集,全称《信息交换用汉字编码字符集·基本集》,又称 GB 0,由中国国家标准总局发布,1981 年 5...对于人名、古汉语等方面出现的罕用字,GB 2312 不能处理,这导致了后来 GBK 及 GB 18030 汉字字符集的出现。...GBK 编码区分三部分: 汉字区 包括 GBK/2:OXBOA1-F7FE, 收录 GB 2312 汉字 6763 个,按原序排列; GBK/3:OX8140-AOFE,收录 CJK 汉字 6080...图形符号区 包括 GBK/1:OXA1A1-A9FE,除 GB 2312 的符号外,还增补了其它符号 GBK/5:OXA840-A9AO,扩除非汉字区。...3 GB18030 GB 18030,全称:国家标准 GB 18030-2005《信息技术中文编码字符集》,是中华人民共和国现时最新的内码字集,是 GB 18030-2000《信息技术信息交换用汉字编码字符集基本集的扩充

2.2K31

UNICODE,GBK,UTF-8

UNICODE,GBK,UTF-8 UNICODE,GBK,UTF-8     简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的...按照程序员的称呼,GB2312、GBK都属于双字节字符集 (DBCS)。 2000年的GB18030是取代GBK1.0的正式国家标准。...在1991年前后,双方都认识到世界不需要两个不兼容的字符集。于是它们开始合并双方的工作成果,并为创立一个单一编码表而协同工作。...2.1、内码和code page 目前Windows的内核已经支持Unicode字符集,这样在内核上可以支持全世界所有的语言文字。...我再详细解释一下: “GB2312的原文”是指国家1980年的一个标准《中华人民共和国国家标准信息交换用汉字编码字符集 基本集 GB 2312-80》。这个标准用两个数来编码汉字和中文符号。

2.6K20

字符集

常见的编码方式有 ASCII 编码、ISO-8859-1(不支持中文)、GBK、GB2312(中国编码,支持中文)、UTF-8 等等,详情见表 1。...对于人名、古汉语等方面出现的罕用字,GB2312 不能处理,这导致了后来GBK及GB 18030汉字字符集的出现。...GBK 编码GBK 编码:全称叫《汉字内码扩展规范》,是在 GB2312-80 标准基础上的内码扩展规范,使用了双字节编码方案,其编码范围从 8140 至 FEFE(剔除 xx7F),共 23940 个码位...70000 余个,解决了中文、日文、朝鲜语等的编码,兼容 GBK。...GB2312、GBK、UTF-8、UTF-16 这几种格式都可以用来对汉字进行编码,在实际应用中具体选择哪种编码方式,需要根据实际应用场景,当前的应用场景是编码效率重要还是减少存储空间重要。

1.7K10

java字符集

;因此中文平台(中文平台默认字符集编码GBK)下一个中文字符占2个字节,而英文平台(英文平台默认字符集编码Cp1252(类似于ISO-8859-1))。...编码方式决定字节长度;在中文平台下,默认的字符集编码是GBK,此时如果使用getBytes()或getBytes("GBK"),则按照GBK的编码规则将每个中文字符用2个byte表示。...在英文平台下,默认的字符集编码是Cp1252(类似于ISO-8859-1),如果使用GBK、UTF-8进行编码,得到的字节数组依然是正确的(GBK4个字节,UTF-8是6个字节)。...在中文平台下,默认的字符集编码是GBK,于是content.getBytes()得到的是什么呢?...你会发现它最终还是都已"GB2312"或者"GBK"的方式保存。 在中文平台下,如果使用OutputStreamWriter,则在后台写入时会把字符流转换成字节流,此时指定的编码字符集就起作用了。

2K50

MySQL字符集

MySQL之字符集 字符集介绍 gbk/gb2312 gbk/gb2312 采用双字节字符集,不论中、英文字符均使用双字符来表示,为了区分中文,将其最高位都设定成1 gb2312是gbk的子集,gbk...是gb18030的子集,gb2312仅能存储简体中文字符 gbk包括中日韩字符的大字符集 通常使用gbk字符集足够 国际通用性比utf8差,不过utf8占用的数据库比gbk大(utf8是三字节字符集)...latin1的扩展,增加了亚洲、非洲常规语言支持,但仍不支持全部语言,且ASCII用unidoce来表示效率不高(小字符集转换成大字符集,往往便随的就是字符的丢失) utf8是unicode的扩展 gbk...存储空间:char(N)类型的存储空间和字符集有关系,结合刚才字符集的知识点,一个中文在utf8字符集中占用3个bytes、gbk占用2个bytes、数字和字符统一用一个字符表示。...存储空间:varchar(N)类型的存储空间和字符集有关系,结合刚才字符集的知识点,一个中文在utf8字符集中占用3个bytes、gbk统一占用2个bytes、数字和字符一个字符表示。

3.6K10

字符集详解

字符集是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集名称:ASCII字符集、GB2312字符集、BIG5字符集、 GB18030字符集、Unicode字符集等。...常见的字符集有很多,其中最常用的是ASCII字符集。ASCII字符集包括了基本的英文字母、数字和符号,是计算机中最常用的字符集之一。...其他常见的字符集包括: GB2312字符集 GB2312是中国国家标准的汉字字符集,包括了简体中文字符集,总计有6763个汉字。该字符集是GB18030字符集的前身,主要用于简体中文的处理。...字符集的种类很多,包括ASCII、Latin、GBK、GB2312、Big5、UTF-8、UTF-16、UTF-32等。...不同的字符集适用于不同的语言和场景,选择合适的字符集可以大大提高数据处理效率和准确性。 三、字符集分类 单字节字符集 单字节字符集是指每个字符只占用一个字节的字符集,如ASCII字符集

9310
领券