zoukankan      html  css  js  c++  java
  • 字符编码GBK、GB2312和UTF-8的区别与联系

    在计算机系统内,文本信息的存储使用的ASC II码。

    什么是ASC II码呢?

    ASC II码全称是“美国信息交换标准代码”,从字面上我们就能知道,这是一套用于显示英语和西欧语种的编码体系。

    它包含常用的英文字母、数字及一些特殊字符和控制符等共计127个字符,是最通用的单字节编码系统,即一个字符对应一个唯一的ASC II码。

    随着个人计算机在全球的普及,很明显单字节的字符编码根本不能满足各个国家、各个语种的编码和显示需求,这个时候就需要针对不同语种定制不同的编码规范。

    GBK、GB2312以及UTF-8就是在这种条件下诞生的。

    先来看看GB2312和GBK这两种中文编码规范。

    GB指代的“国标”,即“国家标准”。

    GB2312包含了常用的中文字符,同时也兼容ASCII码。在这种编码规范中,ASCII码占一个字节,码值在0~127之间;中文字符占两个字节,码值在127~256之间。

    GBK兼容GB2312编码,但比GB2312包含了更多的汉字:中文存储时,第一个字节码值在127~256之间,第二个字节码值在0~256之间。

    再来看看UTF8编码。

    UFT8是一种国际化的编码方式,包含了世界上大部分的语种文字,也兼容ASCII码。

    这类标准依据文字的不同,使用1~6个字节来存储字符,是一种多字节的编码规范。它对英文使用一个字节(8位)存储,对中文使用三个字节(24位)存储。

    在WEB编码格式的使用上应该如何选择呢?

    编码格式的选择主要在于文本内容和面向的用户范围。

    UTF8是国际通用编码,适用范围更广,如果文本内容的英文字符较多或者注重多国用户体验的网站,UTF8是首选。

    但UTF8占用的数据库比GBK大,如果基本上需要显示中文字符,可以考虑适用GBK编码,毕竟它是GB2312的超集。

  • 相关阅读:
    puppet之模板和类
    puppet之资源
    puppet自动化安装服务
    puppet自动化搭建lnmp架构
    puppet工简介一
    CDN杂谈
    cdn工作原理
    mysql之innodb存储引擎
    Android应用开发基础篇(11)-----ViewFlipper
    Android应用开发基础篇(10)-----Menu(菜单)
  • 原文地址:https://www.cnblogs.com/mimifeng/p/9473689.html
Copyright © 2011-2022 走看看