setlocale以及各区域语言信息

setlocale 支持的参数具体的资料很少, 可以跟踪源码获取相关信息
setlocale 设置的包括, 语言,区域,国家,代码页等

以下列出系统安装的相关表

static BOOL CALLBACK LocEnumProc(CHAR *pHexCode)
{
	LCID		dwLcid;
	CHAR		szLangName[256], szLangNameSab[256], szCnty[256], szCodePage[256];

	dwLcid = strtoul(pHexCode, NULL, 16);
	GetLocaleInfoA(dwLcid, LOCALE_SABBREVLANGNAME, szLangNameSab, sizeof(szLangNameSab));	//	简写
	GetLocaleInfoA(dwLcid, LOCALE_IDEFAULTANSICODEPAGE, szCodePage, sizeof(szCodePage));	//	代码页
	GetLocaleInfoA(dwLcid, LOCALE_SENGLANGUAGE, szLangName, sizeof(szLangName));			//	语言
	GetLocaleInfoA(dwLcid, LOCALE_SENGCOUNTRY, szCnty, sizeof(szCnty));						//	国家
	
	ATLTRACE("%04x %-6s %-6s %-24s %s\r\n", dwLcid, szLangNameSab, szCodePage, szLangName, szCnty);

	return TRUE;
}

BOOL	OutLangName()
{
	EnumSystemLocalesA(LocEnumProc, LCID_INSTALLED);
	return TRUE;
}

实际输出如下

0401 ARA    1256   Arabic                   Saudi Arabia
0402 BGR    1251   Bulgarian                Bulgaria
0403 CAT    1252   Catalan                  Spain
0404 CHT    950    Chinese (Traditional)    Taiwan
0405 CSY    1250   Czech                    Czech Republic
0406 DAN    1252   Danish                   Denmark
0407 DEU    1252   German                   Germany
0408 ELL    1253   Greek                    Greece
0409 ENU    1252   English                  United States
040a ESP    1252   Spanish                  Spain
040b FIN    1252   Finnish                  Finland
040c FRA    1252   French                   France
040d HEB    1255   Hebrew                   Israel
040e HUN    1250   Hungarian                Hungary
040f ISL    1252   Icelandic                Iceland
0410 ITA    1252   Italian                  Italy
0411 JPN    932    Japanese                 Japan
0412 KOR    949    Korean                   Korea
0413 NLD    1252   Dutch                    Netherlands
0414 NOR    1252   Norwegian (Bokm錶)       Norway
0415 PLK    1250   Polish                   Poland
0416 PTB    1252   Portuguese               Brazil
0417 RMC    1252   Romansh                  Switzerland
0418 ROM    1250   Romanian                 Romania
0419 RUS    1251   Russian                  Russia
041a HRV    1250   Croatian                 Croatia
041b SKY    1250   Slovak                   Slovakia
041c SQI    1250   Albanian                 Albania
041d SVE    1252   Swedish                  Sweden
041e THA    874    Thai                     Thailand
041f TRK    1254   Turkish                  Turkey
0420 URD    1256   Urdu                     Islamic Republic of Pakistan
0421 IND    1252   Indonesian               Indonesia
0422 UKR    1251   Ukrainian                Ukraine
0423 BEL    1251   Belarusian               Belarus
0424 SLV    1250   Slovenian                Slovenia
0425 ETI    1257   Estonian                 Estonia
0426 LVI    1257   Latvian                  Latvia
0427 LTH    1257   Lithuanian               Lithuania
0428 TAJ    1251   Tajik (Cyrillic)         Tajikistan
0429 FAR    1256   Persian                  Iran
042a VIT    1258   Vietnamese               Vietnam
042b HYE    0      Armenian                 Armenia
042c AZE    1254   Azeri (Latin)            Azerbaijan
042d EUQ    1252   Basque                   Spain
042e HSB    1252   Upper Sorbian            Germany
042f MKI    1251   Macedonian (FYROM)       Macedonia (FYROM)
0432 TSN    1252   Setswana                 South Africa
0434 XHO    1252   isiXhosa                 South Africa
0435 ZUL    1252   isiZulu                  South Africa
0436 AFK    1252   Afrikaans                South Africa
0437 KAT    0      Georgian                 Georgia
0438 FOS    1252   Faroese                  Faroe Islands
0439 HIN    0      Hindi                    India
043a MLT    0      Maltese                  Malta
043b SME    1252   Sami (Northern)          Norway
043e MSL    1252   Malay                    Malaysia
043f KKZ    0      Kazakh                   Kazakhstan
0440 KYR    1251   Kyrgyz                   Kyrgyzstan
0441 SWK    1252   Kiswahili                Kenya
0442 TUK    1250   Turkmen                  Turkmenistan
0443 UZB    1254   Uzbek (Latin)            Uzbekistan
0444 TTT    1251   Tatar                    Russia
0445 BNG    0      Bengali                  India
0446 PAN    0      Punjabi                  India
0447 GUJ    0      Gujarati                 India
0448 ORI    0      Oriya                    India
0449 TAM    0      Tamil                    India
044a TEL    0      Telugu                   India
044b KDI    0      Kannada                  India
044c MYM    0      Malayalam                India
044d ASM    0      Assamese                 India
044e MAR    0      Marathi                  India
044f SAN    0      Sanskrit                 India
0450 MNN    1251   Mongolian (Cyrillic)     Mongolia
0451 BOB    0      Tibetan                  People's Republic of China
0452 CYM    1252   Welsh                    United Kingdom
0453 KHM    0      Khmer                    Cambodia
0454 LAO    0      Lao                      Lao P.D.R.
0456 GLC    1252   Galician                 Spain
0457 KNK    0      Konkani                  India
045a SYR    0      Syriac                   Syria
045b SIN    0      Sinhala                  Sri Lanka
045d IUS    0      Inuktitut (Syllabics)    Canada
045e AMH    0      Amharic                  Ethiopia
0461 NEP    0      Nepali                   Nepal
0462 FYN    1252   Frisian                  Netherlands
0463 PAS    0      Pashto                   Afghanistan
0464 FPO    1252   Filipino                 Philippines
0465 DIV    0      Divehi                   Maldives
0468 HAU    1252   Hausa (Latin)            Nigeria
046a YOR    1252   Yoruba                   Nigeria
046b QUB    1252   Quechua                  Bolivia
046c NSO    1252   Sesotho sa Leboa         South Africa
046d BAS    1251   Bashkir                  Russia
046e LBX    1252   Luxembourgish            Luxembourg
046f KAL    1252   Greenlandic              Greenland
0470 IBO    1252   Igbo                     Nigeria
0478 III    0      Yi                       People's Republic of China
047a MPD    1252   Mapudungun               Chile
047c MWK    1252   Mohawk                   Canada
047e BRE    1252   Breton                   France
0480 UIG    1256   Uyghur                   People's Republic of China
0481 MRI    0      Maori                    New Zealand
0482 OCI    1252   Occitan                  France
0483 COS    1252   Corsican                 France
0484 GSW    1252   Alsatian                 France
0485 SAH    1251   Yakut                    Russia
0486 QUT    1252   K'iche                   Guatemala
0487 KIN    1252   Kinyarwanda              Rwanda
0488 WOL    1252   Wolof                    Senegal
048c PRS    1256   Dari                     Afghanistan
0491 GLA    1252   Scottish Gaelic          United Kingdom
0801 ARI    1256   Arabic                   Iraq
0804 CHS    936    Chinese (Simplified)     People's Republic of China
0807 DES    1252   German                   Switzerland
0809 ENG    1252   English                  United Kingdom
080a ESM    1252   Spanish                  Mexico
080c FRB    1252   French                   Belgium
0810 ITS    1252   Italian                  Switzerland
0813 NLB    1252   Dutch                    Belgium
0814 NON    1252   Norwegian (Nynorsk)      Norway
0816 PTG    1252   Portuguese               Portugal
081a SRL    1250   Serbian (Latin)          Serbia and Montenegro (Former)
081d SVF    1252   Swedish                  Finland
082c AZC    1251   Azeri (Cyrillic)         Azerbaijan
082e DSB    1252   Lower Sorbian            Germany
083b SMF    1252   Sami (Northern)          Sweden
083c IRE    1252   Irish                    Ireland
083e MSB    1252   Malay                    Brunei Darussalam
0843 UZB    1251   Uzbek (Cyrillic)         Uzbekistan
0845 BNB    0      Bengali                  Bangladesh
0850 MNG    0      Mongolian (Traditional Mongolian) People's Republic of China
085d IUK    1252   Inuktitut (Latin)        Canada
085f TZM    1252   Tamazight (Latin)        Algeria
086b QUE    1252   Quechua                  Ecuador
0c01 ARE    1256   Arabic                   Egypt
0c04 ZHH    950    Chinese (Traditional)    Hong Kong S.A.R.
0c07 DEA    1252   German                   Austria
0c09 ENA    1252   English                  Australia
0c0a ESN    1252   Spanish                  Spain
0c0c FRC    1252   French                   Canada
0c1a SRB    1251   Serbian (Cyrillic)       Serbia and Montenegro (Former)
0c3b SMG    1252   Sami (Northern)          Finland
0c6b QUP    1252   Quechua                  Peru
1001 ARL    1256   Arabic                   Libya
1004 ZHI    936    Chinese (Simplified)     Singapore
1007 DEL    1252   German                   Luxembourg
1009 ENC    1252   English                  Canada
100a ESG    1252   Spanish                  Guatemala
100c FRS    1252   French                   Switzerland
101a HRB    1250   Croatian (Latin)         Bosnia and Herzegovina
103b SMJ    1252   Sami (Lule)              Norway
1401 ARG    1256   Arabic                   Algeria
1404 ZHM    950    Chinese (Traditional)    Macao S.A.R.
1407 DEC    1252   German                   Liechtenstein
1409 ENZ    1252   English                  New Zealand
140a ESC    1252   Spanish                  Costa Rica
140c FRL    1252   French                   Luxembourg
141a BSB    1250   Bosnian (Latin)          Bosnia and Herzegovina
143b SMK    1252   Sami (Lule)              Sweden
1801 ARM    1256   Arabic                   Morocco
1809 ENI    1252   English                  Ireland
180a ESA    1252   Spanish                  Panama
180c FRM    1252   French                   Principality of Monaco
181a SRS    1250   Serbian (Latin)          Bosnia and Herzegovina
183b SMA    1252   Sami (Southern)          Norway
1c01 ART    1256   Arabic                   Tunisia
1c09 ENS    1252   English                  South Africa
1c0a ESD    1252   Spanish                  Dominican Republic
1c1a SRN    1251   Serbian (Cyrillic)       Bosnia and Herzegovina
1c3b SMB    1252   Sami (Southern)          Sweden
2001 ARO    1256   Arabic                   Oman
2009 ENJ    1252   English                  Jamaica
200a ESV    1252   Spanish                  Bolivarian Republic of Venezuela
201a BSC    1251   Bosnian (Cyrillic)       Bosnia and Herzegovina
203b SMS    1252   Sami (Skolt)             Finland
2401 ARY    1256   Arabic                   Yemen
2409 ENB    1252   English                  Caribbean
240a ESO    1252   Spanish                  Colombia
241a SRM    1250   Serbian (Latin)          Serbia
243b SMN    1252   Sami (Inari)             Finland
2801 ARS    1256   Arabic                   Syria
2809 ENL    1252   English                  Belize
280a ESR    1252   Spanish                  Peru
281a SRO    1251   Serbian (Cyrillic)       Serbia
2c01 ARJ    1256   Arabic                   Jordan
2c09 ENT    1252   English                  Trinidad and Tobago
2c0a ESS    1252   Spanish                  Argentina
2c1a SRP    1250   Serbian (Latin)          Montenegro
3001 ARB    1256   Arabic                   Lebanon
3009 ENW    1252   English                  Zimbabwe
300a ESF    1252   Spanish                  Ecuador
301a SRQ    1251   Serbian (Cyrillic)       Montenegro
3401 ARK    1256   Arabic                   Kuwait
3409 ENP    1252   English                  Republic of the Philippines
340a ESL    1252   Spanish                  Chile
3801 ARU    1256   Arabic                   U.A.E.
380a ESY    1252   Spanish                  Uruguay
3c01 ARH    1256   Arabic                   Bahrain
3c0a ESZ    1252   Spanish                  Paraguay
4001 ARQ    1256   Arabic                   Qatar
4009 ENN    1252   English                  India
400a ESB    1252   Spanish                  Bolivia
4409 ENM    1252   English                  Malaysia
440a ESE    1252   Spanish                  El Salvador
4809 ENE    1252   English                  Singapore
480a ESH    1252   Spanish                  Honduras
4c0a ESI    1252   Spanish                  Nicaragua
500a ESU    1252   Spanish                  Puerto Rico
540a EST    1252   Spanish                  United States
posted @ 2023-02-23 11:05  Yofoo  阅读(114)  评论(0编辑  收藏  举报