Code : Tout sélectionner
;*=============================
; Module CodePage Windows only
; Mesa
; 2016
;*=============================
; INFO
; https://msdn.microsoft.com/en-us/library/windows/desktop/dd317756(v=vs.85).aspx
; Debug GetACP_();Returns the current Windows ANSI code page (ACP) identifier for the operating system.
; Debug GetOEMCP_();Returns the current original equipment manufacturer (OEM) code page identifier for the operating system.
; Debug GetThreadLocale_();GetConsoleOutputCP_();GetConsoleCP_()
; (For more info about a particular codepage, use GetCPInfo_, GetCPInfoEx_)
DeclareModule CodePageWindows
Enumeration
#GetCodePage_Identifier
#GetCodePage_DotNET_Name
#GetCodePage_Additional_information
#GetCodePage_All
EndEnumeration
Declare.s GetACP(Option=0) ;Returns the current Windows ANSI code page (ACP) identifier for the operating system.
Declare.s GetOEMCP(Option=0) ;Returns the current original equipment manufacturer (OEM) code page identifier for the operating system.
EndDeclareModule
Module CodePageWindows
Global CodePageWindows$= "37,IBM037,IBM EBCDIC US-Canada," +
"437,IBM437,OEM United States," +
"500,IBM500,IBM EBCDIC International," +
"708,ASMO-708,Arabic (ASMO 708)," +
"709,none,Arabic (ASMO-449+ or BCON V4)," +
"710,none,Arabic - Transparent Arabic," +
"720,DOS-720,Arabic (Transparent ASMO); Arabic (DOS)," +
"737,ibm737,OEM Greek (formerly 437G); Greek (DOS)," +
"775,ibm775,OEM Baltic; Baltic (DOS)," +
"850,ibm850,OEM Multilingual Latin 1; Western European (DOS)," +
"852,ibm852,OEM Latin 2; Central European (DOS)," +
"855,IBM855,OEM Cyrillic (primarily Russian)," +
"857,ibm857,OEM Turkish; Turkish (DOS)," +
"858,IBM00858,OEM Multilingual Latin 1 + Euro symbol," +
"860,IBM860,OEM Portuguese; Portuguese (DOS)," +
"861,ibm861,OEM Icelandic; Icelandic (DOS)," +
"862,DOS-862,OEM Hebrew; Hebrew (DOS)," +
"863,IBM863,OEM French Canadian; French Canadian (DOS)," +
"864,IBM864,OEM Arabic; Arabic (864)," +
"865,IBM865,OEM Nordic; Nordic (DOS)," +
"866,cp866,OEM Russian; Cyrillic (DOS)," +
"869,ibm869,OEM Modern Greek; Greek Modern (DOS)," +
"870,IBM870,IBM EBCDIC Multilingual/ROECE (Latin 2); IBM EBCDIC Multilingual Latin 2," +
"874,windows-874,ANSI/OEM Thai (ISO 8859-11); Thai (Windows)," +
"875,cp875,IBM EBCDIC Greek Modern," +
"932,shift_jis,ANSI/OEM Japanese; Japanese (Shift-JIS)," +
"936,gb2312,ANSI/OEM Simplified Chinese (PRC; Singapore); Chinese Simplified (GB2312)," +
"949,ks_c_5601-1987,ANSI/OEM Korean (Unified Hangul Code)," +
"950,big5,ANSI/OEM Traditional Chinese (Taiwan; Hong Kong SAR; PRC); Chinese Traditional (Big5)," +
"1026,IBM1026,IBM EBCDIC Turkish (Latin 5)," +
"1047,IBM01047,IBM EBCDIC Latin 1/Open System," +
"1140,IBM01140,IBM EBCDIC US-Canada (037 + Euro symbol); IBM EBCDIC (US-Canada-Euro)," +
"1141,IBM01141,IBM EBCDIC Germany (20273 + Euro symbol); IBM EBCDIC (Germany-Euro)," +
"1142,IBM01142,IBM EBCDIC Denmark-Norway (20277 + Euro symbol); IBM EBCDIC (Denmark-Norway-Euro)," +
"1143,IBM01143,IBM EBCDIC Finland-Sweden (20278 + Euro symbol); IBM EBCDIC (Finland-Sweden-Euro)," +
"1144,IBM01144,IBM EBCDIC Italy (20280 + Euro symbol); IBM EBCDIC (Italy-Euro)," +
"1145,IBM01145,IBM EBCDIC Latin America-Spain (20284 + Euro symbol); IBM EBCDIC (Spain-Euro)," +
"1146,IBM01146,IBM EBCDIC United Kingdom (20285 + Euro symbol); IBM EBCDIC (UK-Euro)," +
"1147,IBM01147,IBM EBCDIC France (20297 + Euro symbol); IBM EBCDIC (France-Euro)," +
"1148,IBM01148,IBM EBCDIC International (500 + Euro symbol); IBM EBCDIC (International-Euro)," +
"1149,IBM01149,IBM EBCDIC Icelandic (20871 + Euro symbol); IBM EBCDIC (Icelandic-Euro)," +
"1200,utf-16,Unicode UTF-16; little endian byte order (BMP of ISO 10646); available only to managed applications," +
"1201,unicodeFFFE,Unicode UTF-16; big endian byte order; available only to managed applications," +
"1250,windows-1250,ANSI Central European; Central European (Windows)," +
"1251,windows-1251,ANSI Cyrillic; Cyrillic (Windows)," +
"1252,windows-1252,ANSI Latin 1; Western European (Windows)," +
"1253,windows-1253,ANSI Greek; Greek (Windows)," +
"1254,windows-1254,ANSI Turkish; Turkish (Windows)," +
"1255,windows-1255,ANSI Hebrew; Hebrew (Windows)," +
"1256,windows-1256,ANSI Arabic; Arabic (Windows)," +
"1257,windows-1257,ANSI Baltic; Baltic (Windows)," +
"1258,windows-1258,ANSI/OEM Vietnamese; Vietnamese (Windows)," +
"1361,Johab,Korean (Johab)," +
"10000,macintosh,MAC Roman; Western European (Mac)," +
"10001,x-mac-japanese,Japanese (Mac)," +
"10002,x-mac-chinesetrad,MAC Traditional Chinese (Big5); Chinese Traditional (Mac)," +
"10003,x-mac-korean,Korean (Mac)," +
"10004,x-mac-arabic,Arabic (Mac)," +
"10005,x-mac-hebrew,Hebrew (Mac)," +
"10006,x-mac-greek,Greek (Mac)," +
"10007,x-mac-cyrillic,Cyrillic (Mac)," +
"10008,x-mac-chinesesimp,MAC Simplified Chinese (GB 2312); Chinese Simplified (Mac)," +
"10010,x-mac-romanian,Romanian (Mac)," +
"10017,x-mac-ukrainian,Ukrainian (Mac)," +
"10021,x-mac-thai,Thai (Mac)," +
"10029,x-mac-ce,MAC Latin 2; Central European (Mac)," +
"10079,x-mac-icelandic,Icelandic (Mac)," +
"10081,x-mac-turkish,Turkish (Mac)," +
"10082,x-mac-croatian,Croatian (Mac)," +
"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," +
"20000,x-Chinese_CNS,CNS Taiwan; Chinese Traditional (CNS)," +
"20001,x-cp20001,TCA Taiwan," +
"20002,x_Chinese-Eten,Eten Taiwan; Chinese Traditional (Eten)," +
"20003,x-cp20003,IBM5550 Taiwan," +
"20004,x-cp20004,TeleText Taiwan," +
"20005,x-cp20005,Wang Taiwan," +
"20105,x-IA5,IA5 (IRV International Alphabet No. 5; 7-bit); Western European (IA5)," +
"20106,x-IA5-German,IA5 German (7-bit)," +
"20107,x-IA5-Swedish,IA5 Swedish (7-bit)," +
"20108,x-IA5-Norwegian,IA5 Norwegian (7-bit)," +
"20127,us-ascii,US-ASCII (7-bit)," +
"20261,x-cp20261,T.61," +
"20269,x-cp20269,ISO 6937 Non-Spacing Accent," +
"20273,IBM273,IBM EBCDIC Germany," +
"20277,IBM277,IBM EBCDIC Denmark-Norway," +
"20278,IBM278,IBM EBCDIC Finland-Sweden," +
"20280,IBM280,IBM EBCDIC Italy," +
"20284,IBM284,IBM EBCDIC Latin America-Spain," +
"20285,IBM285,IBM EBCDIC United Kingdom," +
"20290,IBM290,IBM EBCDIC Japanese Katakana Extended," +
"20297,IBM297,IBM EBCDIC France," +
"20420,IBM420,IBM EBCDIC Arabic," +
"20423,IBM423,IBM EBCDIC Greek," +
"20424,IBM424,IBM EBCDIC Hebrew," +
"20833,x-EBCDIC-KoreanExtended,IBM EBCDIC Korean Extended," +
"20838,IBM-Thai,IBM EBCDIC Thai," +
"20866,koi8-r,Russian (KOI8-R); Cyrillic (KOI8-R)," +
"20871,IBM871,IBM EBCDIC Icelandic," +
"20880,IBM880,IBM EBCDIC Cyrillic Russian," +
"20905,IBM905,IBM EBCDIC Turkish," +
"20924,IBM00924,IBM EBCDIC Latin 1/Open System (1047 + Euro symbol)," +
"20932,EUC-JP,Japanese (JIS 0208-1990 and 0212-1990)," +
"20936,x-cp20936,Simplified Chinese (GB2312); Chinese Simplified (GB2312-80)," +
"20949,x-cp20949,Korean Wansung," +
"21025,cp1025,IBM EBCDIC Cyrillic Serbian-Bulgarian," +
"21027,0,(deprecated)," +
"21866,koi8-u,Ukrainian (KOI8-U); Cyrillic (KOI8-U)," +
"28591,iso-8859-1,ISO 8859-1 Latin 1; Western European (ISO)," +
"28592,iso-8859-2,ISO 8859-2 Central European; Central European (ISO)," +
"28593,iso-8859-3,ISO 8859-3 Latin 3," +
"28594,iso-8859-4,ISO 8859-4 Baltic," +
"28595,iso-8859-5,ISO 8859-5 Cyrillic," +
"28596,iso-8859-6,ISO 8859-6 Arabic," +
"28597,iso-8859-7,ISO 8859-7 Greek," +
"28598,iso-8859-8,ISO 8859-8 Hebrew; Hebrew (ISO-Visual)," +
"28599,iso-8859-9,ISO 8859-9 Turkish," +
"28603,iso-8859-13,ISO 8859-13 Estonian," +
"28605,iso-8859-15,ISO 8859-15 Latin 9," +
"29001,x-Europa,Europa 3," +
"38598,iso-8859-8-i,ISO 8859-8 Hebrew; Hebrew (ISO-Logical)," +
"50220,iso-2022-jp,ISO 2022 Japanese with no halfwidth Katakana; Japanese (JIS)," +
"50221,csISO2022JP,ISO 2022 Japanese with halfwidth Katakana; Japanese (JIS-Allow 1 byte Kana)," +
"50222,iso-2022-jp,ISO 2022 Japanese JIS X 0201-1989; Japanese (JIS-Allow 1 byte Kana - SO/SI)," +
"50225,iso-2022-kr,ISO 2022 Korean," +
"50227,x-cp50227,ISO 2022 Simplified Chinese; Chinese Simplified (ISO 2022)," +
"50229,0,ISO 2022 Traditional Chinese," +
"50930,0,EBCDIC Japanese (Katakana) Extended," +
"50931,0,EBCDIC US-Canada and Japanese," +
"50933,0,EBCDIC Korean Extended and Korean," +
"50935,0,EBCDIC Simplified Chinese Extended and Simplified Chinese," +
"50936,0,EBCDIC Simplified Chinese," +
"50937,0,EBCDIC US-Canada and Traditional Chinese," +
"50939,0,EBCDIC Japanese (Latin) Extended and Japanese," +
"51932,euc-jp,EUC Japanese," +
"51936,EUC-CN,EUC Simplified Chinese; Chinese Simplified (EUC)," +
"51949,euc-kr,EUC Korean," +
"51950,0,EUC Traditional Chinese," +
"52936,hz-gb-2312,HZ-GB2312 Simplified Chinese; Chinese Simplified (HZ)," +
"54936,GB18030,Windows XP and later: GB18030 Simplified Chinese (4 byte); Chinese Simplified (GB18030)," +
"57002,x-iscii-de,ISCII Devanagari," +
"57003,x-iscii-be,ISCII Bangla," +
"57004,x-iscii-ta,ISCII Tamil," +
"57005,x-iscii-te,ISCII Telugu," +
"57006,x-iscii-as,ISCII Assamese," +
"57007,x-iscii-or,ISCII Odia," +
"57008,x-iscii-ka,ISCII Kannada," +
"57009,x-iscii-ma,ISCII Malayalam," +
"57010,x-iscii-gu,ISCII Gujarati," +
"57011,x-iscii-pa,ISCII Punjabi," +
"65000,utf-7,Unicode (UTF-7)," +
"65001,utf-8,Unicode (UTF-8)"
;GetACP Returns the current Windows ANSI code page (ACP) identifier for the operating system.
Procedure.s GetACP(Option=0)
Protected CodePage$
CodePage$=Str(GetACP_())
Select Option
Case 0 ;Identifier
ProcedureReturn CodePage$
Case 1 ;DotNET_Name
For i=1 To 456 Step 3 ; 456=152*3
If StringField(CodePageWindows$,i,",") = CodePage$
Break
EndIf
Next i
ProcedureReturn StringField(CodePageWindows$,i+1,",")
Case 2 ;Additional_information
For i=1 To 456 Step 3
If StringField(CodePageWindows$,i,",") = CodePage$
Break
EndIf
Next i
ProcedureReturn StringField(CodePageWindows$,i+2,",")
Case 3 ;All
For i=1 To 456 Step 3
If StringField(CodePageWindows$,i,",") = CodePage$
Break
EndIf
Next i
CodePage$=StringField(CodePageWindows$,i+0,",") + "|" +
StringField(CodePageWindows$,i+1,",") + "|" +
StringField(CodePageWindows$,i+2,",")
ProcedureReturn CodePage$
EndSelect
EndProcedure
;GetOEMCP Returns the current original equipment manufacturer (OEM) code page identifier for the operating system.
Procedure.s GetOEMCP(Option=0)
Protected CodePage$
CodePage$ = Str(GetOEMCP_())
Select Option
Case 0 ;Identifier
ProcedureReturn CodePage$
Case 1 ;DotNET_Name
For i=1 To 456 Step 3 ; 456=152*3
If StringField(CodePageWindows$,i,",") = CodePage$
Break
EndIf
Next i
ProcedureReturn StringField(CodePageWindows$,i+1,",")
Case 2 ;Additional_information
For i=1 To 456 Step 3
If StringField(CodePageWindows$,i,",") = CodePage$
Break
EndIf
Next i
ProcedureReturn StringField(CodePageWindows$,i+2,",")
Case 3 ;All
For i=1 To 456 Step 3
If StringField(CodePageWindows$,i,",") = CodePage$
Break
EndIf
Next i
CodePage$=StringField(CodePageWindows$,i+0,",") + "|" +
StringField(CodePageWindows$,i+1,",") + "|" +
StringField(CodePageWindows$,i+2,",")
ProcedureReturn CodePage$
EndSelect
EndProcedure
EndModule
UseModule CodePageWindows
Debug GetACP(#GetCodePage_Identifier)
Debug GetACP(#GetCodePage_DotNET_Name)
Debug GetACP(#GetCodePage_Additional_information)
Debug GetACP(#GetCodePage_All)
Debug "====================================================="
Debug GetOEMCP(#GetCodePage_Identifier)
Debug GetOEMCP(#GetCodePage_DotNET_Name)
Debug GetOEMCP(#GetCodePage_Additional_information)
Debug GetOEMCP(#GetCodePage_All)
Debug "====================================================="
; DataSection ; Not needed but could be useful for a PBSian
; CodePageWindows:
; Data.s "37", "IBM037", "IBM EBCDIC US-Canada"
; Data.s "437", "IBM437", "OEM United States"
; Data.s "500", "IBM500", "IBM EBCDIC International"
; Data.s "708", "ASMO-708", "Arabic (ASMO 708)"
; Data.s "709", "0", "Arabic (ASMO-449+, BCON V4)"
; Data.s "710", "0", "Arabic - Transparent Arabic"
; Data.s "720", "DOS-720", "Arabic (Transparent ASMO); Arabic (DOS)"
; Data.s "737", "ibm737", "OEM Greek (formerly 437G); Greek (DOS)"
; Data.s "775", "ibm775", "OEM Baltic; Baltic (DOS)"
; Data.s "850", "ibm850", "OEM Multilingual Latin 1; Western European (DOS)"
; Data.s "852", "ibm852", "OEM Latin 2; Central European (DOS)"
; Data.s "855", "IBM855", "OEM Cyrillic (primarily Russian)"
; Data.s "857", "ibm857", "OEM Turkish; Turkish (DOS)"
; Data.s "858", "IBM00858", "OEM Multilingual Latin 1 + Euro symbol"
; Data.s "860", "IBM860", "OEM Portuguese; Portuguese (DOS)"
; Data.s "861", "ibm861", "OEM Icelandic; Icelandic (DOS)"
; Data.s "862", "DOS-862", "OEM Hebrew; Hebrew (DOS)"
; Data.s "863", "IBM863", "OEM French Canadian; French Canadian (DOS)"
; Data.s "864", "IBM864", "OEM Arabic; Arabic (864)"
; Data.s "865", "IBM865", "OEM Nordic; Nordic (DOS)"
; Data.s "866", "cp866", "OEM Russian; Cyrillic (DOS)"
; Data.s "869", "ibm869", "OEM Modern Greek; Greek, Modern (DOS)"
; Data.s "870", "IBM870", "IBM EBCDIC Multilingual/ROECE (Latin 2); IBM EBCDIC Multilingual Latin 2"
; Data.s "874", "windows-874", "ANSI/OEM Thai (ISO 8859-11); Thai (Windows)"
; Data.s "875", "cp875", "IBM EBCDIC Greek Modern"
; Data.s "932", "shift_jis", "ANSI/OEM Japanese; Japanese (Shift-JIS)"
; Data.s "936", "gb2312", "ANSI/OEM Simplified Chinese (PRC, Singapore); Chinese Simplified (GB2312)"
; Data.s "949", "ks_c_5601-1987", "ANSI/OEM Korean (Unified Hangul Code)"
; Data.s "950", "big5", "ANSI/OEM Traditional Chinese (Taiwan; Hong Kong SAR, PRC); Chinese Traditional (Big5)"
; Data.s "1026", "IBM1026", "IBM EBCDIC Turkish (Latin 5)"
; Data.s "1047", "IBM01047", "IBM EBCDIC Latin 1/Open System"
; Data.s "1140", "IBM01140", "IBM EBCDIC US-Canada (037 + Euro symbol); IBM EBCDIC (US-Canada-Euro)"
; Data.s "1141", "IBM01141", "IBM EBCDIC Germany (20273 + Euro symbol); IBM EBCDIC (Germany-Euro)"
; Data.s "1142", "IBM01142", "IBM EBCDIC Denmark-Norway (20277 + Euro symbol); IBM EBCDIC (Denmark-Norway-Euro)"
; Data.s "1143", "IBM01143", "IBM EBCDIC Finland-Sweden (20278 + Euro symbol); IBM EBCDIC (Finland-Sweden-Euro)"
; Data.s "1144", "IBM01144", "IBM EBCDIC Italy (20280 + Euro symbol); IBM EBCDIC (Italy-Euro)"
; Data.s "1145", "IBM01145", "IBM EBCDIC Latin America-Spain (20284 + Euro symbol); IBM EBCDIC (Spain-Euro)"
; Data.s "1146", "IBM01146", "IBM EBCDIC United Kingdom (20285 + Euro symbol); IBM EBCDIC (UK-Euro)"
; Data.s "1147", "IBM01147", "IBM EBCDIC France (20297 + Euro symbol); IBM EBCDIC (France-Euro)"
; Data.s "1148", "IBM01148", "IBM EBCDIC International (500 + Euro symbol); IBM EBCDIC (International-Euro)"
; Data.s "1149", "IBM01149", "IBM EBCDIC Icelandic (20871 + Euro symbol); IBM EBCDIC (Icelandic-Euro)"
; Data.s "1200", "utf-16", "Unicode UTF-16, little endian byte order (BMP of ISO 10646); available only to managed applications"
; Data.s "1201", "unicodeFFFE", "Unicode UTF-16, big endian byte order; available only to managed applications"
; Data.s "1250", "windows-1250", "ANSI Central European; Central European (Windows)"
; Data.s "1251", "windows-1251", "ANSI Cyrillic; Cyrillic (Windows)"
; Data.s "1252", "windows-1252", "ANSI Latin 1; Western European (Windows)"
; Data.s "1253", "windows-1253", "ANSI Greek; Greek (Windows)"
; Data.s "1254", "windows-1254", "ANSI Turkish; Turkish (Windows)"
; Data.s "1255", "windows-1255", "ANSI Hebrew; Hebrew (Windows)"
; Data.s "1256", "windows-1256", "ANSI Arabic; Arabic (Windows)"
; Data.s "1257", "windows-1257", "ANSI Baltic; Baltic (Windows)"
; Data.s "1258", "windows-1258", "ANSI/OEM Vietnamese; Vietnamese (Windows)"
; Data.s "1361", "Johab", "Korean (Johab)"
; Data.s "10000", "macintosh", "MAC Roman; Western European (Mac)"
; Data.s "10001", "x-mac-japanese", "Japanese (Mac)"
; Data.s "10002", "x-mac-chinesetrad", "MAC Traditional Chinese (Big5); Chinese Traditional (Mac)"
; Data.s "10003", "x-mac-korean", "Korean (Mac)"
; Data.s "10004", "x-mac-arabic", "Arabic (Mac)"
; Data.s "10005", "x-mac-hebrew", "Hebrew (Mac)"
; Data.s "10006", "x-mac-greek", "Greek (Mac)"
; Data.s "10007", "x-mac-cyrillic", "Cyrillic (Mac)"
; Data.s "10008", "x-mac-chinesesimp", "MAC Simplified Chinese (GB 2312); Chinese Simplified (Mac)"
; Data.s "10010", "x-mac-romanian", "Romanian (Mac)"
; Data.s "10017", "x-mac-ukrainian", "Ukrainian (Mac)"
; Data.s "10021", "x-mac-thai", "Thai (Mac)"
; Data.s "10029", "x-mac-ce", "MAC Latin 2; Central European (Mac)"
; Data.s "10079", "x-mac-icelandic", "Icelandic (Mac)"
; Data.s "10081", "x-mac-turkish", "Turkish (Mac)"
; Data.s "10082", "x-mac-croatian", "Croatian (Mac)"
; Data.s "12000", "utf-32", "Unicode UTF-32, little endian byte order; available only to managed applications"
; Data.s "12001", "utf-32BE", "Unicode UTF-32, big endian byte order; available only to managed applications"
; Data.s "20000", "x-Chinese_CNS", "CNS Taiwan; Chinese Traditional (CNS)"
; Data.s "20001", "x-cp20001", "TCA Taiwan"
; Data.s "20002", "x_Chinese-Eten", "Eten Taiwan; Chinese Traditional (Eten)"
; Data.s "20003", "x-cp20003", "IBM5550 Taiwan"
; Data.s "20004", "x-cp20004", "TeleText Taiwan"
; Data.s "20005", "x-cp20005", "Wang Taiwan"
; Data.s "20105", "x-IA5", "IA5 (IRV International Alphabet No. 5, 7-bit); Western European (IA5)"
; Data.s "20106", "x-IA5-German", "IA5 German (7-bit)"
; Data.s "20107", "x-IA5-Swedish", "IA5 Swedish (7-bit)"
; Data.s "20108", "x-IA5-Norwegian", "IA5 Norwegian (7-bit)"
; Data.s "20127", "us-ascii", "US-ASCII (7-bit)"
; Data.s "20261", "x-cp20261", "T.61"
; Data.s "20269", "x-cp20269", "ISO 6937 Non-Spacing Accent"
; Data.s "20273", "IBM273", "IBM EBCDIC Germany"
; Data.s "20277", "IBM277", "IBM EBCDIC Denmark-Norway"
; Data.s "20278", "IBM278", "IBM EBCDIC Finland-Sweden"
; Data.s "20280", "IBM280", "IBM EBCDIC Italy"
; Data.s "20284", "IBM284", "IBM EBCDIC Latin America-Spain"
; Data.s "20285", "IBM285", "IBM EBCDIC United Kingdom"
; Data.s "20290", "IBM290", "IBM EBCDIC Japanese Katakana Extended"
; Data.s "20297", "IBM297", "IBM EBCDIC France"
; Data.s "20420", "IBM420", "IBM EBCDIC Arabic"
; Data.s "20423", "IBM423", "IBM EBCDIC Greek"
; Data.s "20424", "IBM424", "IBM EBCDIC Hebrew"
; Data.s "20833", "x-EBCDIC-KoreanExtended", "IBM EBCDIC Korean Extended"
; Data.s "20838", "IBM-Thai", "IBM EBCDIC Thai"
; Data.s "20866", "koi8-r", "Russian (KOI8-R); Cyrillic (KOI8-R)"
; Data.s "20871", "IBM871", "IBM EBCDIC Icelandic"
; Data.s "20880", "IBM880", "IBM EBCDIC Cyrillic Russian"
; Data.s "20905", "IBM905", "IBM EBCDIC Turkish"
; Data.s "20924", "IBM00924", "IBM EBCDIC Latin 1/Open System (1047 + Euro symbol)"
; Data.s "20932", "EUC-JP", "Japanese (JIS 0208-1990 and 0212-1990)"
; Data.s "20936", "x-cp20936", "Simplified Chinese (GB2312); Chinese Simplified (GB2312-80)"
; Data.s "20949", "x-cp20949", "Korean Wansung"
; Data.s "21025", "cp1025", "IBM EBCDIC Cyrillic Serbian-Bulgarian"
; Data.s "21027", "0", "(deprecated)"
; Data.s "21866", "koi8-u", "Ukrainian (KOI8-U); Cyrillic (KOI8-U)"
; Data.s "28591", "iso-8859-1", "ISO 8859-1 Latin 1; Western European (ISO)"
; Data.s "28592", "iso-8859-2", "ISO 8859-2 Central European; Central European (ISO)"
; Data.s "28593", "iso-8859-3", "ISO 8859-3 Latin 3"
; Data.s "28594", "iso-8859-4", "ISO 8859-4 Baltic"
; Data.s "28595", "iso-8859-5", "ISO 8859-5 Cyrillic"
; Data.s "28596", "iso-8859-6", "ISO 8859-6 Arabic"
; Data.s "28597", "iso-8859-7", "ISO 8859-7 Greek"
; Data.s "28598", "iso-8859-8", "ISO 8859-8 Hebrew; Hebrew (ISO-Visual)"
; Data.s "28599", "iso-8859-9", "ISO 8859-9 Turkish"
; Data.s "28603", "iso-8859-13", "ISO 8859-13 Estonian"
; Data.s "28605", "iso-8859-15", "ISO 8859-15 Latin 9"
; Data.s "29001", "x-Europa", "Europa 3"
; Data.s "38598", "iso-8859-8-i", "ISO 8859-8 Hebrew; Hebrew (ISO-Logical)"
; Data.s "50220", "iso-2022-jp", "ISO 2022 Japanese with no halfwidth Katakana; Japanese (JIS)"
; Data.s "50221", "csISO2022JP", "ISO 2022 Japanese with halfwidth Katakana; Japanese (JIS-Allow 1 byte Kana)"
; Data.s "50222", "iso-2022-jp", "ISO 2022 Japanese JIS X 0201-1989; Japanese (JIS-Allow 1 byte Kana - SO/SI)"
; Data.s "50225", "iso-2022-kr", "ISO 2022 Korean"
; Data.s "50227", "x-cp50227", "ISO 2022 Simplified Chinese; Chinese Simplified (ISO 2022)"
; Data.s "50229", "0", "ISO 2022 Traditional Chinese"
; Data.s "50930", "0", "EBCDIC Japanese (Katakana) Extended"
; Data.s "50931", "0", "EBCDIC US-Canada and Japanese"
; Data.s "50933", "0", "EBCDIC Korean Extended and Korean"
; Data.s "50935", "0", "EBCDIC Simplified Chinese Extended and Simplified Chinese"
; Data.s "50936", "0", "EBCDIC Simplified Chinese"
; Data.s "50937", "0", "EBCDIC US-Canada and Traditional Chinese"
; Data.s "50939", "0", "EBCDIC Japanese (Latin) Extended and Japanese"
; Data.s "51932", "euc-jp", "EUC Japanese"
; Data.s "51936", "EUC-CN", "EUC Simplified Chinese; Chinese Simplified (EUC)"
; Data.s "51949", "euc-kr", "EUC Korean"
; Data.s "51950", "0", "EUC Traditional Chinese"
; Data.s "52936", "hz-gb-2312", "HZ-GB2312 Simplified Chinese; Chinese Simplified (HZ)"
; Data.s "54936", "GB18030", "Windows XP and later: GB18030 Simplified Chinese (4 byte); Chinese Simplified (GB18030)"
; Data.s "57002", "x-iscii-de", "ISCII Devanagari"
; Data.s "57003", "x-iscii-be", "ISCII Bangla"
; Data.s "57004", "x-iscii-ta", "ISCII Tamil"
; Data.s "57005", "x-iscii-te", "ISCII Telugu"
; Data.s "57006", "x-iscii-as", "ISCII Assamese"
; Data.s "57007", "x-iscii-or", "ISCII Odia"
; Data.s "57008", "x-iscii-ka", "ISCII Kannada"
; Data.s "57009", "x-iscii-ma", "ISCII Malayalam"
; Data.s "57010", "x-iscii-gu", "ISCII Gujarati"
; Data.s "57011", "x-iscii-pa", "ISCII Punjabi"
; Data.s "65000", "utf-7", "Unicode (UTF-7)"
; Data.s "65001", "utf-8", "Unicode (UTF-8)"