ASCII / Unicode / UTF-8 / GBK】的更多相关文章

最近接了一个单是需要把非 UTF-8 (No BOM)编码的文件转换成 UTF-8 (No BOM),若此文件是 UTF-8 但带有 BOM ,需要转换成不带 BOM 的.于是开启了一天的阅读.首先花了一上午阅读“文件编码格式(转) - lionking - 博客园 ”这篇文章,阅读完后终于明白了“UTF-8 不是字符集”这句话.之后怕混淆再阅读了“字符集和字符编码(Charset&Encoding) - 博客 - 伯乐在线  ”确认.   这篇文章纯粹是用通俗的语言解释我以前混淆的几个概念,对…
原文出处:http://www.blogjava.net/xcp/archive/2009/10/29/coding2.html 最近老为编码问题而烦燥,下定决心一定要将其弄明白!本文主要总结网上一些朋友提供的 ascii,ISO-8859-1,unicode, utf8,gb2312,big5,gbk,gb18030等几种常区别. 1. ASCII码    目前计算机中用得最广泛的字符集及其编码,是由美国国家标准局(ANSI)制定的ASCII码(American Standard Code f…
来自:http://blog.csdn.net/lvxiangan/article/details/8151670 ----------------------------------------------------------------------- GBK,ISO-8859-1,GB2312的本质区别编码有几种 ,计算机最初是在美国等国家发明的 所以表示字符只有简单的几个字母只要对字母进行编码就好 我们标准码 iso-8859-1 这就是一个标准但是后来计算机普及了 于是就中国要使用计…
编码和解码可以理解成二进制和字符(广义的字符,包括汉字等)的映射表,编码即从字符映射至二进制,解码则为逆过程. 1.英语字符编码ASCII 开始计算机只在美国用.8字节一共可以组合出256(2的8次方)种不同的状态.美国人把其中的编号从0开始的32种状态分别规定了特殊的用途,一但终端.打印机遇上约定好的这些字节被传过来时,就要做一些约定的动作.遇上00x10, 终端就换行,遇上0x07, 终端就向人们嘟嘟叫,例好遇上0x1b, 打印机就打印反白的字,或者终端就用彩色显示字母.他们看到这样很好,于…
[1]ASCII 每个字符占据1bytes(字节),第一次以规范标准发表是在1967年,最后一次修订是在1986年.用二进制表示的话最高位必须为0(扩展的ASCII不在考虑范围内),因此ASCII只能表示128个字 [2]GB2312 最早一版的中文编码(1980年),每个字占据2bytes.由于要和ASCII兼容,那这2bytes最高位不可以为0了(否则和ASCII会有冲突).在GB2312中收录了6763个汉字以及682个特殊符号,已经囊括了生活中最常用的所有汉字. [3]GBK 由于GB2…
vim settings set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936,latin1set termencoding=utf-8set encoding=utf-8 GBK编码:汉字占两个字节 UTF-8编码: 通常汉字占三个字节, 扩展B区以后的汉字占四个字节 UTF-16编码: 通常汉字占两个字节,CJKV扩展B区.扩展C区.扩展D区中的汉字占四个字节(一般字符的Unicode范围是U+0000至U+FFFF,而这些扩展部分…
中文字符集编码Unicode ,gb2312 , cp936 ,GBK,GB18030 cp936是微软自己发布的用在文件系统中的编码方式.而bg2312是中国国家标准.我明白mount -t vfat -o iocharset和samba如果用GB2312为什么有的时候会出现乱码了!其实他们虽基本兼容,但不完全相同.cp936即 code page 936(代码页936)是以GBK(国标扩展字符集)为基础的编码.GB2312(国标字符集)只是GBK的一部分. GB2312只支持常用的汉字,而且…
一直对字符的各种编码方式懵懵懂懂,什么ANSI UNICODE UTF-8 GB2312 GBK DBCS UCS……是不是看的很晕,假如您细细的阅读本文你一定可以清晰的理解他们.Let's go! 很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到8个开关状态是好的,于是他们把这称为"字 节". 再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去.他们看到这样是好的,于是 它们就这…
前几天,Google给我Hotmail邮箱发了封确认信.我看不懂,不是因为我英文不行,而是"???? ????? ??? ????"的内容让我不知所措.有好多程序员处理不好编码问题.不是因为他们学不会,而是因为他们太保守或太不以为然了!我想说,初级程序员需要积累更多 的计算机高级知识:高级程序员需要了解更多的底层知识.  那么Content-Type标记到底有什么作用?UTF-8与Unicode到底有何关系?…………现在我们就一起来揭开编码那神奇的面纱! 从ASCII编码谈起:  我们…
概要: UTF-8的一个特别的好处是它与ISO- 8859-1完全兼容,可以表示世界上所有的字符,汉字通常用3个字节来表示.GB2312的code page是CP20936.GBK的code page是CP936 .GB18030支持的字符数更多.GB2312.GBK.GB18030均为双字节. 整理这篇文章的动机是两个问题: 问题一: 使用Windows记事本的"另存为",可以在GBK.Unicode.Unicode big endian和UTF-8这 几种编码方式间相互转换.同样是…
Unicode(UTF&UCS)深度历险 计算机网络诞生后,大家慢慢地发现一个问题:一个字节放不下一个字符了!因为需要交流,本地化的文字需要能够被支持. 最初的字符集使用7bit来存储字符,因为那时只需要存下一些英文字母和符号.后来虽然扩展到使用8bit来存储一个字符了(这种方式被国际标准化组织收录,成为ISO8859-1.在字符集发展历程中国际标准化组织一直发挥着重要作用.),也还是无法存储诸如中文的字符. 混乱的年代到来了.为了存储下自己的文字,各个国家和地区(多为非拉丁语系的民族,因为这些…
如果觉得此地排版不好,欢迎访问我的博客 浅显总结ASCII Unicode UTF-8的区别 制作表单时,为了追求更好的用户交互体验,常常会有提示性的内容,比如提醒用户字符的限制.由于英文,中文字符的问题,涉及到编码的转换调整. ASCII码 计算机的早期使用者大多使用英文,而计算机则以二进制来储存:ASCII规定128个英文字符与二进制的对应关系,通常占据一个字节.ASCII编码包括大写英文,小写英文,英文符号等256个字符. Unicode编码 随着计算机的普及,各个国家都使用,原来的只限于…
中文字符集编码Unicode ,gb2312 , cp936 ,GBK,GB18030 内容详见: http://www.360doc.com/content/11/1004/12/6139921_153300329.shtml…
转自:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431664106267f12e9bef7ee14cf6a8776a479bdec9b9000 字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(b…
字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节.比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295. 由于计算机是美国人发明的,因此,最早只有127个字符被编码到计算机里…
is 和 == 的区别 # is 比较的是内存地址 # == 比较的是值 a = 'alex' b = 'alex' #int,str(小数据池)会被缓存,为了节约内存 print(id(a),id(b)) 小数据库:int范围-5~256,str范围不能包含特殊字符 lst = ['jj','ll'] lst2 = ['jj','ll'] #不一样,相当于两栋房子各有100万,仍是两栋房子 print(id(lst),id(lst2)) a = [1,2,3] b = a #true,判断两个…
ASCII: ASCII的编码范围为0-127(十六进制:0x00-0x7F),判断函数: function isasciistr($str){ for($i=0;$i<strlen($str);$i++){ if(ord(substr($str,$i,1))>0x7F) return false; } return true; } ISO-8859-1:也称Latin1.编码范围是0-255(0x00-0xFF).0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,…
众所周知,一个文字从输入到显示到存储是有一个固定过程的,其过程为:输入码(根据输入法不同而不同)→机内码(根据语言环境不同而不同,不同的系统语言编码也不一样)→字型码(根据不同的字体而不同)→存储码(根据保存的编码类型不同而不同).不同的存储码之间又有什么异同呢? 一.ASCII系列编码 首先来说明ASCII码(American Standard Code for Information Interchange,美国标准信息交换码),这个编码的时代就久远了,是由美国国家标准局(ANSI)制定,目…
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明   普通的linux 和 普通的windows.   VS2015 和 GCC 7.0 前言   曾记得,我在(https://blog.csdn.net/u011728480/article/details/100277582 <数与计算机 (编码.原码.反码.补码.移码.IEEE 754.定点数.浮点数)>)里面说过,计算机里面存储了数值和符号.…
2017-1-3 [ASCII]一个字节(7位,128个字符,2个16进制) 不包含中文 ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言.它是现今最通用的[单字节]编码系统,并等同于国际标准ISO/IEC 646. ASCII码是目前计算机中用得最广泛的字符编码.   ASCII码使用指定的7位或8位二进制数组合来表示128或256种可能的…
ASCII码ASCII:https://zh.wikipedia.org/wiki/ASCIIASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言.它是现今最通用的单字节编码系统,并且已被国际标准化组织(International Organization for Standardization, ISO)定为国际标准,称为ISO 646标准.起…
在计算机中,经常遇到编码问题,本节主要梳理下ascii,unicode,utf8,gbk 这几种编码之间的关系. ASCII 计算机中,所有数据都以0和1来表示.在一开始的时候,要表示的内容比较少,人们使用了ascii编码的方式来编码. ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 -…
继续上次的学习内容,写一些自己学习的笔记吧!总是觉得没有笔记的学习总是不那么踏实,我承认自己是个记忆力很差的人,特别羡慕那些可以把自己学过的东西记得很牢靠的人.哎!可惜我不是,那只能做出来点东西,就算以后忘了,回过头来可以看一看,有东西查:毕竟是自己亲手打出来的一个一个字啊 已经一万六千字了!嘿嘿...继续加油! 今天公司网络有问题,说是让在家里上班,skype在线就行了.结果我这自觉性不够,就打酱油了!还是继续学习我的mysql吧!我是刚毕业的大学生,学的和写的都是一些最基础的,如果巧遇大牛,…
整理自字符编码笔记:ASCII,Unicode和UTF-8 1. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte).也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111. 上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定.这被称为ASCII…
1 ASCII ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号. 2 Unicode Unicode(统一码.万国码.单一码)是计算机科学领域里的一项业界标准,包括字符集.编码方案等.Unicode 是为了解决传统的字符编码…
Going down your list: "Unicode" isn't an encoding, although unfortunately, a lot of documentation imprecisely uses it to refer to whichever Unicode encoding that particular system uses by default. On Windows and Java, this often means UTF-16; in…
      不同的国家和地区制定了不同的标准,由此产生了 GB2312.GBK.GB18030.Big5.Shift_JIS 等各自的编码标准.这些使用多个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码.在简体中文Windows操作系统中,ANSI 编码代表 GBK 编码:在繁体中文Windows操作系统中,ANSI编码代表Big5:在日文Windows操作系统中,ANSI 编码代表 Shift_JIS 编码.不同 ANSI 编码之间互不兼容,当信息在国际间交流时,无法将属于两种…
字符编码的发展历史 Unicode和UTF-8有何区别? 在这个问题下的于洋的最高票回答中,比较完整地介绍了字符编码的发展历史,为了便于记忆,再次简要概括一番. 一个字节:最初一个字节的标准是混乱的,出现过4位.6位.7位的一字节标准,最终由于历史原因和物理存储需求(8位是2的3次方,方便物理存储),所以采用了8位为一个字节的标准. ASCII:定下了8位为一个字节后,那么一个字节可以表示的状态就有256种(2^8),对应0-255号.接下来就需要考虑8位如何表示一个字符了,ASCII码顾名思义…
字符编码的发展历史 一个字节:最初一个字节的标准是混乱的,出现过4位.6位.7位的一字节标准,最终由于历史原因和物理存储需求(8位是2的3次方,方便物理存储),所以采用了8位为一个字节的标准. ASCII:定下了8位为一个字节后,那么一个字节可以表示的状态就有256种(2^8),对应0-255号.接下来就需要考虑8位如何表示一个字符了,ASCII码顾名思义(American Standard Code for Information Interchange)就是美国的信息交换标准码,因此只需要表…
ASCII 上个世纪60年代,美国制定了基于拉丁字母的一套电脑编码系统,取名为ASCII.它主要用于显示现代英语和其他西欧语言,是现今最通用的单字节编码系统. ASCII码使用指定的7位或8位二进制数组合来表示128或256种可能的字符.标准ASCII码也叫基础ASCII码,使用7位二进制数来表示所有的大写和小写字母,数字0到9.标点符号,以及在美式英语中使用的特殊控制字符. 其中:0-31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行).CR(回车).F…