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

UNICODE,GBK,UTF-8

UNICODE,GBK,UTF-8 UNICODE,GBK,UTF-8     简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的...,同一个汉字,那三个码值是完全不一样的.如"汉"的uncode值与gbk就是不一样的,假设uncode为a040,gbk为b030,而uft-8码,就是把那个值表现的形式.utf-8码完全只针对uncode...整理这篇文章的动机是两个问题: 问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。...对于Unicode(UCS2)、GBKUTF-8这些编码方式,我原来就了解。但这个程序让我有些糊涂,想不起来UTF-16和UCS2有什么关系。...site_id=nrsi&item_id=IWS-Chapter03) 我写过UTF-8、UCS-2、GBK相互转换的软件包,包括使用Windows API和不使用Windows API的版本。

2.6K20

Unicode,GBKUTF-8

但如果有人问你,“Unicode,GBKUTF-8有什么区别?”, 你能自信地给他一句简短清晰的回答吗? 如果不能的话, 那还是看一下这篇文章吧....('utf8').decode('gbk') 浣犲ソ 如上面的代码所示, “你好"两个汉字字符的unicode分别为4f60和597d, utf-8编码后占6个字节, 而gbk编码后占4个字节....注: 本文的python代码示例是在Linux Terminal下运行的, 因此默认为utf-8编码, 如果你是在Windows cmd里运行, 则通常默认GBK编码, 因此乱码会在不同地方出现:)...后记 说了这么多, 现在让我们回到一开始的问题, 如果有人问你"Unicode,GBKUTF-8有什么区别?”..., 我想你应该知道该怎么回答了吧: Unicode是 一种字符集, 而GBKUTF-8都是编码, 因此Unicode和后两者不是一类事物, 是无法进行对比的.

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

    UNICODE,GBK,UTF-8区别

    UNICODE,GBK,UTF-8区别     简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的,同一个汉字,那三个码值是完全不一样的....如"汉"的uncode值与gbk就是不一样的,假设uncode为a040,gbk为b030,而uft-8码,就是把那个值表现的形式.utf-8码完全只针对uncode来组织的,如果GBK要转UTF-8...整理这篇文章的动机是两个问题: 问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。...对于Unicode(UCS2)、GBKUTF-8这些编码方式,我原来就了解。但这个程序让我有些糊涂,想不起来UTF-16和UCS2有什么关系。...参考推荐: UNICODE,GBK,UTF-8区别 字符编码详解及由来(UNICODE,UTF-8,GBK) gbk, gb2312,big5,unicode,utf-8,utf-16之间的关系 中文字符集简介

    3K21

    简述 ascii、unicode、utf-8gbk 的关系

    UTF-8就是在互联网上使用最广的一种Unicode的实现方式。UTF-8最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。...UTF-8中,英文占一个字节,中文占3个字节。...GBK: 汉字国标扩展码,基本上采用了原来GB2312-80所有的汉字及码位,并涵盖了原Unicode中所有的汉字20902,总共收录了883个符号, 21003个汉字及提供了1894个造字码位。...由于GBK同时也涵盖了Unicode所有CJK汉字,所以也可以和Unicode做一一对应。windows默认编码GBK,中文占2个字节。  ...比如,“李杰”,在  utf-8中,一个英文占一个字节,一个中文占3个字节,此处“李杰”占6个字节。GBK中一个中文占2个字节,此处“李杰”占4个字节。

    1.8K10

    utf-8,gbk,gb2312,unicode 编码

    我们常常听到如下编码: UTF-8GBK、GB2312 和 Unicode。这些编码方式之间有何不同呢?下面我们来详细了解一下。...同时,UTF-8 编码也能够支持多种语言字符的表示,使得不同语言之间的交流变得方便。 2.GBK GBK 是中国国家标准的编码方式,主要应用于中文编码。...GBK 编码的优点在于它能够支持中文字符的表示,而且相对于 UTF-8 编码来说,它的编码效率更高一些。但是,GBK 编码的范围比较有限,对于一些生僻字或者少数民族字符就无法表示。...相比 GBK 编码,GB2312 编码的范围更小一些,但它能够支持的字符数量也相对较少。同时,GB2312 编码的兼容性不如 GBKUTF-8,因此在现代的应用中使用的较少。...通过上面的介绍,可以了解到utf-8, gbk, gb2312的区别。一般选择的都是utf-8 下面,来看看utf-8与unicode编码的不同吧? Unicode与UTF-8的区别如下: 一.

    55030

    Python 有关 Unicode UTF-8 GBK 编码问题详解

    重复一遍,这里的关系是,UTF-8 是 Unicode 的实现方式之一。 UTF-8 最大的一个特点,就是它是一种变长的编码方式。...UTF-8 的编码规则很简单,只有二条: 对于单字节的符号,字节的第一位设为 0,后面 7 位为这个符号的 unicode 码。因此对于英语字母,UTF-8 编码和 ASCII 码是相同的。...with open(file_path, encoding='utf-8') as f: f.read() 当使用 gbk 编码保存的文件使用 utf8 打开时会报错,使用 gbk 打开即可 with...open(r'gbk.txt','r',encoding='utf-8') as f: print(f.read()) 错误信息: (result, consumed) = self...,是存储方案 UTF-16 同理 UTF-8 UTF-32 同理 UTF-8 GB2312或GB2312-80是一个简体中文字符集的中国国家标准,全称为《信息交换用汉字编码字符集--基本集》,由中国国家标准总局发布

    1.7K21

    unicode、utf-8、ansi、gbk、gb2312编码详解

    unicode、utf-8、ansi、gbk、gb2312编码详解 前言 作为一个开发人员或是测试人员,免不了要与各种各样的编码打交道,而且这些各种编码总是让人头大,现在我们就来揭开他们的庐山真面目 移动还是联通...于是扩展呗,把之前gb2312中没有利用的位好好利用起来,就成了gbk,这又增加了20000多个汉字,但是咱们少数名族也要用电脑啊,于是有了后来的 GB18030 GB2312和GBK都是用两个字节来编码的...,而utf-8就很好了,所以我们现在也通常使用utf-8。...终 现在我们就可以来看一下联通干不过移动的原因了,因为我们在记事本中不指定存储编码时默认时ansi,在中国的电脑上也就是gbk编码,而联通的gbk编码是: c1 1100 0001 aa 1010 1010...没错,它就是与utf-8编码冲突了,在我们第二次打开记事本的时候,记事本误以为它是utf-8编码。

    6.9K83

    字符编码那点事:快速理解ASCII、Unicode、GBKUTF-8

    虽然GBK收录GB 13000.1-93的全部字符,但编码方式并不相同。GBK自身并非国家标准,只是曾由国家技术监督局标准化司、电子工业部科技与质量监督司公布为"技术规范指导性文件"。...简单来说:Unicode、GBK和Big5码等就是编码的值(也就是术语“字符集”),而UTF-8、UTF-16、UTF32之类就是这个值的表现形式(即术语“编码格式”)。...如"汉"的Unicode值与gbk就是不一样的,假设Unicode为a040,GBK为b030。...以UTF-8为例,UTF-8码完全只针对Unicode来组织的,如果GBK要转UTF-8必须先转Unicode码,再转UTF-8就OK了。...《字符编码那点事:快速理解ASCII、Unicode、GBKUTF-8》 >> 更多同类文章 …… (本文同步发布于:http://www.52im.net/thread

    2.2K20

    字符编码技术专题(一):快速理解ASCII、Unicode、GBKUTF-8

    2、专题目录本文是“字符编码技术专题”系列文章的第 1 篇,总目录如下:《字符编码技术专题(一):快速理解ASCII、Unicode、GBKUTF-8》(* 本文)《字符编码技术专题(二):史诗级计算机字符编码知识入门...虽然GBK收录GB 13000.1-93的全部字符,但编码方式并不相同。GBK自身并非国家标准,只是曾由国家技术监督局标准化司、电子工业部科技与质量监督司公布为"技术规范指导性文件"。...简单来说:Unicode、GBK和Big5码等就是编码的值(也就是术语“字符集”),而UTF-8、UTF-16、UTF32之类就是这个值的表现形式(即术语“编码格式”)。...如"汉"的Unicode值与gbk就是不一样的,假设Unicode为a040,GBK为b030。...以UTF-8为例,UTF-8码完全只针对Unicode来组织的,如果GBK要转UTF-8必须先转Unicode码,再转UTF-8就OK了。

    2.4K51

    【java基础之字符问题】UTF-8GBK的区别与联系

    2 编码 编码就是字符的表现形式,例如unicode字符集就能够用UTF-8、UTF-16和UTF-32编码。 GBKUTF-8转换的核心问题分析。...GBK是一种字符集,而UTF-8是一种编码,因此通常我们研究的GBKUTF-8的转换问题,其实就是GBK与Unicode字符集的转化问题,由于GBK和Unicode的字符(主要讨论汉字字符)之间没有必然的联系...,因此通常是采用查表的方法来实现GBK和Unicode之间的转化。...在完成GBK与Unicode编码的转化后,剩下的工作就是如何把Unicode以UTF-8的形式表现出来了。 搞清楚编码问题,接下来要做的就是如何进行编码转换?...在linux平台下,有iconv()函数可供使用,那么在Windows平台下该如何处理呢?

    1.5K20

    C++读取UTF-8GBK系列的文本方法及原理

    作者:jostree 链接: http://www.cnblogs.com/jostree/p/4374404.html 1.读取UTF-8编码文本原理 首先了解UTF-8的编码方式,UTF-8采用可变长编码的方式...因此对于UTF-8的编码,我们只需要每次计算每个字符开始字节的1的个数,就可以确定这个字符的长度。...2.读取GBK系列文本原理 对于ASCII、GB2312、GBK到GB18030编码方法是向下兼容的 ,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。...双字节部分,首字节从 0×81~0xFE,尾字节从 0×40~0x7E以及 0×80~0xFE,与GBK标准基本兼容。 因此只需检测首字节是否小于0×81即可确定其为单字节编码还是双字节编码。..."Get utf8 first byte out of input src string." << endl; next_idx = m_length; } //输出UTF

    2.1K20

    再再谈java乱码:GBKUTF-8互转尾部乱码问题分析(续)

    在《再谈java乱码:GBKUTF-8互转尾部乱码问题分析》我们分析了,如果从一个UTF-8 的字节序列,经过 new String(b,"GBK") 的操作,"可能"(与总字节数有关)会破坏数据。...同时,可参考:一段java代码带你认识锟斤拷 GBK字节码用UTF-8解码 来看一段代码: public static void main(String[] args) throws IOException..., ParseException { String str="中国人"; System.out.println(str); byte[] b=str.getBytes("GBK");...小结 先回顾一下前文的结论: 对于任意字节流,使用ISO-8859-1 转为字符串再转回来,是安全的;使用GBKUTF-8可能会破坏数据。...现在扩展一下,使用GBK可能会破坏数据,损失最后一个字;如果使用UTF-8 可能损失大部分的字。 但这绝不是说UTF-8 是不好的,而是在这个乱码问题出现的时候,UTF-8是最惨烈的。

    2.3K30
    领券