浅谈字符编码

ASCII 占1个字节,只支持英文

GB2312 占两个字节,支持6700+汉字

GBK GB2312的升级版,支持21000+汉字

Shift-JIS 日本字符

ks_c_5601-1987韩国编码

TIS-620泰国编码

由于每个国家都有自己的字符,所以其对应关系也涵盖了自己国家的字符,但是以上编码都存在局限性,即:仅涵盖本国字符,无其他国家字符的对应关系,应运而生出现万国码,它涵盖了全球所有的文字和二进制的对应关系。

Unicode 2-4字节,已经收录136690个字符,还在一直不断扩张中...

Unicode 起到了两个作用

1.直接支持全球所有语言,每个国家都可以不用再使用自己之前的编码了,用Unicode就可以了(就跟英语是全球统一语言一样)

2.Unicode包含了跟全球所有国家编码的映射关系

Unicode解决了字符和二进制的对应关系,但是使用Unicode表示一个字符,太浪费空间。例如,理应unicode表示“python”需要12个字节才能表示,比原来ASCII表示增加了1倍。

由于计算机的内存比较大,而且字符串在内容中表示时也不会特别大,所以内容可以使用unicode来处理,但是存储和网络传输时一般数据都会非常多,那么增加1倍将是无法容忍的!!!

为了解决存储和网络传输问题,出现了Unicode Transformation Format,学术名UTF,即对Unicode中的进行转换,以便于在存储和网络传输时可以节省空间

    UTF-8:使用1.2.3.4个字节表示所有字符,优先使用1个字符,无法满足则增加一个字节,最多4个字节,英文占1个字节,欧洲语系占2个,东亚占3个

    UTF-16:使用2.4个字节表示所有字符;优先使用2个字节,否则使用4个字节表示

    UTF-32:使用四个字节表示所有字符;

总结 UTF是为Unicode编码设计的一种在存储 和传输时节省空间的编码方案

   无论以什么编码在内存里显示字符,存到硬盘上都是2进制

要注意的是,存到硬盘上是以何种编码存的,再从硬盘上读出来时,就必须以何种编码读,要不就乱了

编码的转换

虽然国际语言是英语,但大家在自己的国家依然说自己的语言,不过出了国,你得会英语

编码也一样,虽然有了 Unicode and UTF-8,但是由于历史问题,每个国家依然在大量使用自己的编码,比如中国的windows,默认编码依然是GBK 而不是UTF-8

基于此,如果中国的软件出口到美国,在美国人的电脑上就会显示乱码,因为他们没有GBK编码,若是想要中国的软件可以正常的在 美国人的电脑上显示,只有一下两个路可走

    1.让美国人的电脑上都装上gbk编码

    2.把你的软件编码以UTF-8 编码

第一种方法几乎不可能实现,第二种方法比较简单,但是也只能是针对新开发的软件,如果你之前开发的软件就是以gbk编码的,上百万行的代码可能已经写出去了,新编码成UTF-8格式也会费很大力气。

所以,针对已经用gbk开发完毕的项目,以上两种方案都不能轻松的让项目在美国人电脑上正常显示,难道没有别的办法了吗?

有!,还记得我们unicode其中一个功能是其包含了跟全球所有国家编码的映射关系,意思就是,你写的gbl的“啊哈”,但是在unicode能自动知道它在unicode的“啊哈”的编码是什么,如果这样的话,那是不是意味着,无论你以什么编码存储数据,只要你的软件在把数据从硬盘读到内存里,转成unicode来显示,就可以了

由于所有的系统,编程语言都默认支持unicode,那你的gbk软件放到美国电脑上,加载到内存里编程unicode,中文就可以正常显示了

作者:sdasdasds

链接:https://www.jianshu.com/p/c715763494f8

來源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容

  • 字符集和编码简介 在编程中常常可以见到各种字符集和编码,包括ASCII,MBCS,Unicode等字符集。确切的说...
    兰山小亭阅读 8,451评论 0 13
  • 我要,你在我身旁 我要,你为我梳妆 上周看完了《驴得水》,这部从上映就一直想去看的片子。一张有着喜剧风格海报的电影...
    柒玖九阅读 523评论 4 4
  • 下雨过后的蓝天,在这片土地上生活了那么多年,从来都没觉得这里的蓝天如此好看。在饱受雾霾折磨后,再次回到家乡,有一种...
    丁走心阅读 298评论 0 1
  • 关于时光 你要把时光当作一条溪水,你要坐在岸旁,看他流逝。 知道昨日只是今日的回忆,而明日只是今日的梦想。 让今日...
    流年2016阅读 423评论 0 0
  • 有了成果再去决定去留 有始有终 有心有诚 能做好 能做完
    云凡夫子阅读 153评论 0 0