今天群里有人在问,

求解:charset="ISO-8859-1"是什么意思

其实我也不大懂,然后就去翻阅了下资料。科普开始:

网页制作中遇到的编码,乱码问题之一:charset=iso-8859-1和charset=gb2312有什么不同?

charset=iso-8859-1是西欧的编码,代表说明网站是采用的编码是英文;

charset=gb2312代表说明网站是采用的编码是简体中文;

charset=utf-8代表世界通用的语言编码;

charset=big5代表说明网站是采用的编码是繁体中文;

charset=euc-kr代表说明网站是采用的编码是韩文;

......等等有很多编码。

最常用到的是charset=gb2312、charset=iso-8859-1和charset=utf-8

charset=utf-8这个编码可以用到中文、韩文、日文等世界上所有语言编码上。

字符集与编码
各个国家和地区所制定的不同 ANSI 编码标准中,都只规定了各自语言所需的“字符”。比如:汉字标准(GB2312)中没有规定韩国语字符怎样存储。这些 ANSI 编码标准所规定的内容包含两层含义:
1. 使用哪些字符。也就是说哪些汉字,字母和符号会被收入标准中。所包含“字符”的集合就叫做“字符集”。
2. 规定每个“字符”分别用一个字节还是多个字节存储,用哪些字节来存储,这个规定就叫做“编码”。
各个国家和地区在制定编码标准的时候,“字符的集合”和“编码”一般都是同时制定的。因此,平常我们所说的“字符集”,比如:GB2312, GBK, JIS 等,除了有“字符的集合”这层含义外,同时也包含了“编码”的含义。
“UNICODE 字符集”包含了各种语言中使用到的所有“字符”。用来给 UNICODE 字符集编码的标准有很多种,比如:UTF-8, UTF-7, UTF-16, UnicodeLittle, UnicodeBig 等。
1、ISO-8859-1:
最简单的编码规则,每一个字节直接作为一个 UNICODE 字符。比如,[0xD6, 0xD0] 这两个字节,通过 iso-8859-1 转化为字符串时,将直接得到 [0x00D6, 0x00D0] 两个 UNICODE 字符,即 "ÖÐ"。
反之,将 UNICODE 字符串通过 iso-8859-1 转化为字节串时,只能正常转化 0~255 范围的字符。

2、GB2312,BIG5,Shift_JIS,ISO-8859-2
把 UNICODE 字符串通过 ANSI 编码转化为“字节串”时,根据各自编码的规定,一个 UNICODE 字符可能转化成一个字节或多个字节。
反之,将字节串转化成字符串时,也可能多个字节转化成一个字符。比如,[0xD6, 0xD0] 这两个字节,通过 GB2312 转化为字符串时,将得到 [0x4E2D] 一个字符,即 '中' 字。
“ANSI 编码”的特点:
1. 这些“ANSI 编码标准”都只能处理各自语言范围之内的 UNICODE 字符。
2. “UNICODE 字符”与“转换出来的字节”之间的关系是人为规定的。

3、UTF-8,UTF-16,UnicodeBig
与“ANSI 编码”类似的,把字符串通过 UNICODE 编码转化成“字节串”时,一个 UNICODE 字符可能转化成一个字节或多个字节。
与“ANSI 编码”不同的是:
1. 这些“UNICODE 编码”能够处理所有的 UNICODE 字符。
2. “UNICODE 字符”与“转换出来的字节”之间是可以通过计算得到的。

最新文章

  1. Webwork 学习之路【05】请求跳转前 xwork.xml 的读取
  2. 【BZOJ 2115】【WC 2011】Xor
  3. 4.js模式-发布-订阅模式
  4. [GUI]界面开发类库-Ribbon风格 [转]
  5. struts2的@Result annotation 如何添加params
  6. POJ1077&&HDU1043(八数码,IDA*+曼哈顿距离)
  7. javascript对象(简略)
  8. 用Eclipse中的git提交代码流程
  9. Linux下的常见压缩解压缩命令
  10. Eclipse lombok java
  11. Docker 容器文件导出 - 六
  12. [easyUI] 列表
  13. MySQL Error--Error Code
  14. mha切换脚本可用的
  15. hadoop2.x编译安装
  16. 非线性方程(组):MATLAB内置函数 solve, vpasolve, fsolve, fzero, roots [MATLAB]
  17. VS2010中如何实现自定义MFC控件
  18. centos6+nginx+php+mysql+memcached+wordpress
  19. 公网API安全--OAuth认证
  20. Hibernate笔记①--myeclipse制动配置hibernate

热门文章

  1. web编程的初步认识
  2. ffmpeg初体验
  3. ffmpeg部分编译选项
  4. DAY9-python并发之多线程理论
  5. Javascript 面向对象(一):封装
  6. java定时器控制时间打印
  7. 虚拟机VMware的安装以及指南
  8. apache2不识别php
  9. 第四天:servlet的生命周期和一些细节问题
  10. libmad介绍