Expected names of Microsoft Windows "ANSI" Code Pages (Encodings)


I was asked about our use of the windows “ansi” code page names, as used in things like MIME types, http content-type tags, etc.  Each “code page” has a name that most accuratly round trips back to the same code page, which I’ve listed as the “preferred name” below.  Additionally, when you ask for a code page matching a name, some code pages have several aliases that map to the identical behavior.  (listed as “aliases” in the table below).

Note that there are quite a few inconsistencies and other odd behaviors.  Some have names of windows-xxx, and others don’t even recognize that form as an alias.  Additionally some reference material I’ve seen refers to any microsoft code page in the windows-xxxx or CPxxx form, whether or not windows itself recognizes those names. 

We have no intention of trying to create a more consistent naming scheme, we prefer that applications use Unicode.

So in practice, you should use the “preferred name” to identify data tagged by a particular code page, but if you are accepting input data, recognize that it may also use one of the listed aliases.  Encoding.GetEncoding() should “do the right thing”.  You might want to look at my previous posts “Encoding.GetEncodings() has a couple “duplicate” names” and “What’s my Encoding Called?“.

Code Page 874 (ANSI/OEM – Thai)

Preferred Name:

windows-874


Aliases:

DOS-874
iso-8859-11
TIS-620



Code Page 932 (ANSI/OEM – Japanese Shift-JIS)

Preferred Name:

shift_jis


Aliases:

csShiftJIS
csWindows31J
ms_Kanji
shift-jis
sjis
x-ms-cp932
x-sjis



Code Page 936 (ANSI/OEM – Simplified Chinese GBK)

Preferred Name:

gb2312


Aliases:

chinese
CN-GB
csGB2312
csGB231280
csISO58GB231280
GB2312-80
GB231280
GBK
GB_2312-80
iso-ir-58



Code Page 949 (ANSI/OEM – Korean)

Preferred Name:

ks_c_5601-1987


Aliases:

csKSC56011987
iso-ir-149
korean
ks-c-5601
ks-c5601
KSC5601
KSC_5601
ks_c_5601
ks_c_5601-1989
ks_c_5601_1987



Code Page 950 (ANSI/OEM – Traditional Chinese Big5)

Preferred Name:

big5


Aliases:

Big5-HKSCS
cn-big5
csbig5
x-x-big5



Code Page 1250 (ANSI – Central Europe)

Preferred Name:

windows-1250


Aliases:

x-cp1250



Code Page 1251 (ANSI – Cyrillic)

Preferred Name:

windows-1251


Aliases:

x-cp1251



Code Page 1252 (ANSI – Latin I)

Preferred Name:

Windows-1252


Aliases:

x-ansi



Code Page 1253 (ANSI – Greek)

Preferred Name:

windows-1253



Code Page 1254 (ANSI – Turkish)

Preferred Name:

windows-1254



Code Page 1255 (ANSI – Hebrew)

Preferred Name:

windows-1255



Code Page 1256 (ANSI – Arabic)

Preferred Name:

windows-1256


Aliases:

cp1256



Code Page 1257 (ANSI – Baltic)

Preferred Name:

windows-1257



Code Page 1258 (ANSI/OEM – Viet Nam)

Preferred Name:

windows-1258


Comments (0)