常用代码页与BOM
常用代码页:
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的更多相关文章
- 小心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. ...
- CodePage------Encoding 类支持的编码以及与这些编码关联的代码页(CodePage)
Encoding 类 .NET Framework 4 表示字符编码. 继承层次结构 System.Object System.Text.Encoding System.Text.ASCII ...
- PHP常用代码大全(新手入门必备)
PHP常用代码大全(新手入门必备),都是一些开发中常用的基础.需要的朋友可以参考下. 1.连接MYSQL数据库代码 <?php $connec=mysql_connect("loc ...
- warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
------问题-------------------- Qt项目使用 VC++ 编译器出现此错误. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符.请将该文件保存为 ...
- phpcms v9模板制作常用代码集合(转)
phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...
- phpcms v9模板制作常用代码集合
phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...
- 关于 cmd 控制台默认代码页编码的几种方法
造成的中文及特殊字符乱码. 第一种:临时性修改编码 使用 chcp 命令,例如 chcp 65001 ,这回将当前代码页变为 utf-8编码,不过这种方式在关闭 cmd 之后会自动失效. 常用的编码及 ...
- CMD当前代码页修改
python3.x在程序开发中统一的编码是 UTF-8,但是进行交互式编程的时候会经常遇到乱码问题,这是因为Window cmd的默认编码是GBK.与程序采用的 UTF-8 不一致造成的中文及特殊字符 ...
- GCD 常用代码
GCD 常用代码 体验代码 异步执行任务 - (void)gcdDemo1 { // 1. 全局队列 dispatch_queue_t q = dispatch_get_global_queue(0, ...
随机推荐
- 程序员取悦女票的正确姿势---Tip1(iOS美容篇)
代码地址如下:http://www.demodashi.com/demo/11695.html 前言 女孩子都喜欢用美图工具进行图片美容,近来无事时,特意为某人写了个自定义图片滤镜生成器,安装到手机即 ...
- UVA 6475 Effective Infection Time
You are estimating the threat level of quarantined zones that have been abandoned to the infection. ...
- oracle备份还原数据库
首先到对应bin目录下打开cmd(windows),linux用相应终端链接:eg:D:\app\sun\product\11.2.0\dbhome_1\BIN 用户备份:exp u_tdms/p_t ...
- CoffeeScript 学习笔记
1.什么叫 CoffeeScript CoffeeScript 是一种新的编程语言,构建于 JavaScript 之上.CoffeeScript 提供了一种简洁的语法,对 Python 或 Ruby ...
- xcode7和ios9适配之路
从xcode6.x升级xcode7.2之后,发现要做一堆事情来做适配,不然之前的项目没法好好执行. 一.换库 dylib后缀的库都要换成tbd后缀的.例如以下所看到的 换库前: 换库后: 二.http ...
- 用brew安装gcc48
由于mac自带的gcc的版本过低,因此想自己装一个新的gcc. 在网上搜索了一圈后发现用brew install安装比较简单,但可能由于本地的brew有冲突,因此网上的攻略都没有效果. 通过在gith ...
- C# 操作超时正常还是错
net(客户端)调用IIS(服务端)出现503后,就报操作超时错误 问题描述:服务端环境:IIS 客户端环境:windowsxp + iis + .net 调用时出现如下错误:System.Net.W ...
- c++ [wrong]simple "Garbage Collector"
In fact, Ptr alone can accomplish the task mentioned below. Implementation see Ptr.h, main2.cpp. In ...
- c++ telescoping constructor is NOT supported until c++11
Telescoping constructor: see Effective Java 2nd Edition Item 2 If you want to use telescoping constr ...
- wireshark抓包常见提示含义解析
原文转自:http://blog.sina.com.cn/s/blog_987e00020102wq60.html http://www.cnblogs.com/redsmith/p/5462547. ...