常用代码页:
CP437 IBM437 OEM United States
CP1252表示West European Latin
CP932 日本
CP949 韩国
CP936表示GBK中文编码
CP54936表示GB18030编码(4 byte)
CP950表示BIG5繁体中文

WIN-1251 -> OEM-866 (Win2Dos)
WIN-1251 -> KOI8-R

1251是斯拉夫语系的编号,什么是斯拉夫语系呢?斯拉夫语系就是前苏联各国家使用的语言,现在就是俄语、乌克兰语、卢森堡语、白俄罗斯语、保加利亚语、塞尔维亚语、马其顿语等
KOI8-R 是KOI-8系列的斯拉夫文字8位元编码,供俄语及保加利亚语使用。在Unicode未流行之前,KOI8-R 是最为广泛使用的俄语编码,使用率甚至起ISO/IEC 8859-5还高。

Code Page 1200 UTF-16LE Unicode little-endian
Code Page 1201 UTF-16BE Unicode big-endian
Code Page 65000 UTF-7 Unicode
Code Page 65001 UTF-8 Unicode
Code Page 28591 ISO-8859-1 (followed by ISO-8859-2 to ISO-8859-15)
12000 utf-32 Unicode UTF-32, little endian byte order; available only to managed applications
12001 utf-32BE Unicode UTF-32, big endian byte order; available only to managed applications
28591 iso-8859-1 ISO 8859-1 Latin 1; Western European (ISO)
51936 EUC-CN EUC Simplified Chinese; Chinese Simplified (EUC)

ISO/IEC 8859编码标准中的15种字符集:
ISO/IEC 8859-n 英文别名 中文解释
ISO/IEC 8859 -1 Latin-1 西欧语言
ISO/IEC 8859 -2 Latin-2 中欧语言
ISO/IEC 8859 -3 Latin-3 南欧语言。世界语也可用此字符集显示。
ISO/IEC 8859 -4 Latin-4 北欧语言
ISO/IEC 8859 -5 Cyrillic 斯拉夫语言
ISO/IEC 8859 -6 Arabic 阿拉伯语
ISO/IEC 8859 -7 Greek 希腊语
ISO/IEC 8859 -8 Hebrew 希伯来语(视觉顺序);ISO 8859-8-I是 希伯来语(逻辑顺序)
ISO/IEC 8859 -9 Latin-5 或 Turkish 它把Latin-1的冰岛语字母换走,加入土耳其语字母
ISO/IEC 8859 -10 Latin-6 或 Nordic 北日耳曼语支,用来代替Latin-4
ISO/IEC 8859 -11 Thai 从泰国的 TIS620 标准字集演化而来
ISO/IEC 8859 -13 Latin-7 或 Baltic Rim 波罗的语族
ISO/IEC 8859 -14 Latin-8 或 Celtic 凯尔特语族
ISO/IEC 8859 -15 Latin-9 西欧语言,加入Latin-1欠缺的芬兰语字母和大写法语重音字母,以及欧元(€)符号。
ISO/IEC 8859 -16 Latin-10 东南欧语言。主要供罗马尼亚语使用,并加入欧元符号。

Windows中的Code Page,按照引用领域来划分,可以分为两类:ANSI Code Page和 OEM Code Page
1. ANSI Code Page的官网正式叫法其实是Windows Code Page。但是由于ANSI Code Page被误用的太广泛了,索性微软也就接受了此叫法,然后就叫做ANSI Code Page了。
Windows的Code Page中用的最广泛的是Windows 1252,其用于英语和西欧语言字符。Windows 1252是基于ANSI草案(ANSI draft)而设计的。
2. OEM Code Page主要是用于Windows系统中的命令行界面(console)程序,虚拟DOS。

所有的BOM(其实不建议使用):
UTF-8 EF BB BF
UTF-16 (BE) FE FF
UTF-16 (LE) FF FE
UTF-32 (BE) 00 00 FE FF
UTF-32 (LE) FF FE 00 00
UTF-7
2B 2F 76 38
2B 2F 76 39
2B 2F 76 2B
2B 2F 76 2F
UTF-1 F7 64 4C
UTF-EBCDIC DD 73 66 73
SCSU 0E FE FF
BOCU-1 FB EE 28
GB-18030 84 31 95 33

ANSI编码规则
ANSI字符编码的规则,或者是其所包含的字符的由来,主要是:
1. 0-127 (0x00-0x7F)
完全和7位编码的ASCII字符集(ASA X3.4-1963)相同
2. 128-159 (0x80-0x9F)
一些可打印字符
这部分的编码,与国际编码ISO 8859-1的做法不同,ISO 8859-1是将此部分编码用于控制字符
3. 160-255 (0xA0-0FF)
参考了ISO 8859-1中的字符
由此可以看出,ANSI中很多字符,和ISO-8859中的字符,看起来非常相似。
这就导致了很多人误以为,ANSI和ISO-8859是一回事呢。
总结:
ANSI
= Windows Code Page 1252
= Windows Codepage 1252
= Windows 1252
= CP 1252
= 共256个字符
= 0-127的ASCII + 128-159的可打印字符 + 160-255的和ISO 8859-1中类似的字符

Windows 1252和ISO 8859-1基本等同:
有点不同的是,在128-159(0x80-0x9F)的范围的值,ISO 8859-1编码为控制字符,而微软编码为可打印字符。

其它代码页:
437 — 最初的 IBM PC 代码页,实现了扩展ASCII字符集
737 — 希腊语
850 — “多语言 (Latin-1)” (西欧语言)
852 — “斯拉夫 (Latin-2)” (中欧及东欧语言)
855 — 西里尔(Cyril)字母
857 — 土耳其语
858 — 带欧元符号的“多语言”
860 — 葡萄牙语
861 — 冰岛语
863 — 法语 加拿大英语
865 — 北欧
866 — 西里尔(Cyril)字母
869 — 希腊语

874 — 泰文字母
1250 — 东欧拉丁字母
1251 — 古斯拉夫语
1252 — 西欧拉丁字母 ISO-8859-1.
1253 — 希腊语
1254 — 土耳其语
1255 — 希伯来语
1256 — 阿拉伯语
1257 — 巴尔
1258 — 越南
1254 — 土耳其语
Windows-1252与ISO-885

10000 — Macintosh Roman encoding (followed by several other Mac character sets)
10007 — Macintosh Cyrillic encoding
10029 — Macintosh Central European encoding
1200 — UCS-2LE Unicode 小端序
1201 — UCS-2BE Unicode 大端序
65000 — UTF-7 Unicode
65001 — UTF-8 Unicode

MultiByteToWideChar和WideCharToMultiByte用法详解
http://blog.csdn.net/suiyunonghen/article/details/4538455

LCID用于定义发送给浏览器的页面地区标识,它用以确定时间、货币、数字等的显示方式,类似于控制面板中的“区域设置”。
中文(中国) 2052
中文(台湾) 1028
日语 1041
韩语 1042
英语(美国) 1033
法国(标准) 1036

常用代码页与BOM的更多相关文章

  1. 小心Windows7的UTF-8代码页

    目录 第1章小心Windows7的UTF-8代码页    1 1.1 UTF-16与UTF-8相互转换    1 1.1.1 使用Windows API    1 1.1.2 自己编码    1 1. ...

  2. CodePage------Encoding 类支持的编码以及与这些编码关联的代码页(CodePage)

    Encoding 类 .NET Framework 4  表示字符编码. 继承层次结构 System.Object  System.Text.Encoding    System.Text.ASCII ...

  3. PHP常用代码大全(新手入门必备)

    PHP常用代码大全(新手入门必备),都是一些开发中常用的基础.需要的朋友可以参考下.   1.连接MYSQL数据库代码 <?php $connec=mysql_connect("loc ...

  4. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

    ------问题-------------------- Qt项目使用 VC++ 编译器出现此错误. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 ...

  5. phpcms v9模板制作常用代码集合(转)

    phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...

  6. phpcms v9模板制作常用代码集合

    phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...

  7. 关于 cmd 控制台默认代码页编码的几种方法

    造成的中文及特殊字符乱码. 第一种:临时性修改编码 使用 chcp 命令,例如 chcp 65001 ,这回将当前代码页变为 utf-8编码,不过这种方式在关闭 cmd 之后会自动失效. 常用的编码及 ...

  8. CMD当前代码页修改

    python3.x在程序开发中统一的编码是 UTF-8,但是进行交互式编程的时候会经常遇到乱码问题,这是因为Window cmd的默认编码是GBK.与程序采用的 UTF-8 不一致造成的中文及特殊字符 ...

  9. GCD 常用代码

    GCD 常用代码 体验代码 异步执行任务 - (void)gcdDemo1 { // 1. 全局队列 dispatch_queue_t q = dispatch_get_global_queue(0, ...

随机推荐

  1. 基于STC12C5A的MINI3216多功能点阵时钟

    代码地址如下:http://www.demodashi.com/demo/12862.html 基于STC12C5A的MINI3216多功能点阵时钟 硬件详解 PCB 硬件原理图 主控模块 max72 ...

  2. BigInteger 与 BigDecimal区别,及BigDecimal详解

    一般来说,BigInteger用的不是很多,BigDecimal用的稍微多一点,就比如说JDBC中,如果一个字段的数据库类型是Number, 那么getObject().getClass()的结果是j ...

  3. python中MySQL模块TypeError: %d format: a number is required, not str异常解决

    转载自:http://www.codeif.com/topic/896 python代码: attr_sql = "INSERT INTO `ym_attribute` (`attr_nam ...

  4. filebeat.service

    # # filebeat systemd service # [Unit] Description=Filebeat Documentation=https://www.elastic.co/guid ...

  5. 使用swap 清空vector

    //最简单的使用swap,清除元素并回收内存 vector <int>().swap(vecInt); //清除容器并最小化它的容量, // vecInt.swap(vector<i ...

  6. unity, inspector debug

    以前经常因为脚本中private变量不在inspector界面中显示,不方便观察其值的变化,所以本该用private的用了public. 今天发现,原来inspector有个选项,如图,平常勾选的是N ...

  7. poj 3666 河南省第七届程序设计D题(山区修路)

    题目大意: 给定一个序列,以最小代价将其变成单调不增或单调不减序列,求最小的变动价值:需要用到离散化dp 状态转移方程: dp[i][j]=abs(j-w[i])+min(dp[i-1][k]);(k ...

  8. 李洪强iOS开发之OC[004] - OC和C的差异的学习

  9. linux挂载远程windows服务器上的ISO,给内网的服务器安装软件

    原文: http://blog.csdn.net/chagaostu/article/details/45195817 给内网的服务器安装软件 直接用yum install XXX的话,会告知找不到源 ...

  10. Linux 进程创建一(system和fork)

    一:system系统调用 #include <stdlib.h> int system(const char *string); system函数传递给/bin/sh -c 来执行stri ...