.NET RegionInfo类

当我尝试创建一个具有某些ISO 3166国家代码的新RegionInfo(孟加拉国的“BD”,索马里的“SO”,斯里兰卡的“LK”),我得到一个ArgumentException,表示它无法识别。

这是怎么回事? RegionInfo的Intellisense(字符串)表示它符合ISO 3166,但不支持这些国家/地区代码?

我不明白。

.NET不提供开箱即用的所有文化/区域。 请注意这里的’预定义’RegionInfos: http : //msdn.microsoft.com/en-us/library/system.globalization.regioninfo (VS.80) .aspx 。

不幸的是,如果要使用非预定义区域,则必须自己定义它们。 这是MSDN的操作方法: http : //msdn.microsoft.com/en-us/library/ms172469(VS.80).aspx 。

现在支持您错过的一些区域(在较新版本的.NET Framework中)。

以下代码查找从特定区域“可访问”的所有RegionInfo

 foreach (var ri in CultureInfo.GetCultures(CultureTypes.SpecificCultures).Select(ci => new RegionInfo(ci.ToString())).OrderBy(x => x.TwoLetterISORegionName)) Console.WriteLine("{0,3}: {1,11}: {2} ({3})", ri.TwoLetterISORegionName, ri, ri.EnglishName, ri.NativeName); 

在我的机器上它现在给出:

 029:en-029:加勒比(加勒比海)
  AE:ar-AE:阿联酋(الإماراتالعربيةالمتحدة)
  AF:ps-AF:阿富汗(افغانستان)
  AF:prs-AF:阿富汗(افغانستان)
  AL:sq-AL:阿尔巴尼亚(Shqipëria)
  AM:hy-AM:亚美尼亚(Հայաստան)
  AR:es-AR:阿根廷(阿根廷)
  AT:de-AT:奥地利(Österreich)
  AU:en-AU:澳大利亚(澳大利亚)
  AZ:az-Latn-AZ:阿塞拜疆(Azərbaycan)
  AZ:az-Cyrl-AZ:阿塞拜疆(Азәрбајҹан)
  BA:hr-BA:波斯尼亚和黑塞哥维那(Bosna i Hercegovina)
  BA:bs-Latn-BA:波斯尼亚和黑塞哥维那(Bosna i Hercegovina)
  BA:sr-Latn-BA:波斯尼亚和黑塞哥维那(Bosna i Hercegovina)
  BA:sr-Cyrl-BA:波斯尼亚和黑塞哥维那(БоснаиХерцеговина)
  BA:bs-Cyrl-BA:波斯尼亚和黑塞哥维那(БоснаиХерцеговина)
  BD:bn-BD:孟加拉国(বাংলাদেশ)
  BE:fr-BE:比利时(比利时)
  BE:nl-BE:比利时(België)
  BG:bg-BG:保加利亚(България)
  BH:ar-BH:巴林(البحرين)
  BN:ms-BN:文莱达鲁萨兰国(文莱达鲁萨兰国)
  BO:quz-BO:玻利维亚(Bolivia Suyu)
  BO:es-BO:玻利维亚(玻利维亚)
  BR:pt-BR:巴西(巴西)
  BY:be-BY:白俄罗斯(Беларусь)
  BZ:en-BZ:伯利兹(伯利兹)
  CA:iu-Cans-CA:加拿大(ᑲᓇᑕ)
  CA:moh-CA:加拿大(加拿大)
  CA:iu-Latn-CA:加拿大(kanata)
  CA:fr-CA:加拿大(加拿大)
  CA:en-CA:加拿大(加拿大)
  CH:rm-CH:瑞士(Svizra)
  CH:de-CH:瑞士(瑞士)
  CH:it-CH:瑞士(Svizzera)
  CH:fr-CH:瑞士(瑞士)
  CL:arn-CL:智利(智利)
  CL:es-CL:智利(智利)
  CN:bo-CN:中华人民共和国(ཀྲུང་ཧྭ་མི་དམངས་སྤྱི་མཐུན་རྒྱལ་་)。)
 中国:ii-CN:中华人民共和国(ꍏꉸꏓꂱꇭꉼꇩ)
  CN:ug-CN:中华人民共和国(جۇڭخۇاخەلقجۇمھۇرىيىتى)
  CN:zh-CN:中华人民共和国(中华人民共和国)
  CN:mn-Mong-CN:中华人民共和国(ᠪᠦᠭᠦᠳᠡᠨᠠᠢᠷᠠᠮᠳᠠᠬᠤᠳᠤᠮᠳᠠᠳᠤᠠᠷᠠᠳᠣᠯᠣᠰ)
  CO:es-CO:哥伦比亚(哥伦比亚)
  CR:es-CR:哥斯达黎加(哥斯达黎加)
  CS:sr-Latn-CS:塞尔维亚和黑山(前)(Srbija i Crna Gora(Prethodno))
  CS:sr-Cyrl-CS:塞尔维亚和黑山(前)(СрбијаиЦрнаГора(Претходно))
  CZ:cs-CZ:捷克共和国(Českárepublika)
  DE:de-DE:德国(德国)
  DE:hsb-DE:德国(Němska)
  DE:dsb-DE:德国(Nimska)
  DK:da-DK:丹麦(丹麦)
  DO:es-DO:多米尼加共和国(RepúblicaDominicana)
  DZ:tzm-Latn-DZ:阿尔及利亚(Djazaïr)
  DZ:ar-DZ:阿尔及利亚(الجزائر)
  EC:quz-EC:厄瓜多尔(厄瓜多尔苏玉)
  EC:es-EC:厄瓜多尔(厄瓜多尔)
  EE:et-EE:爱沙尼亚(Eesti)
  EG:ar-EG:埃及(مصر)
  ES:ca-ES:西class牙(Espanya)
  ES:eu-ES:西class牙(Espainia)
  ES:gl-ES:西class牙(España)
  ES:es-ES:西class牙(España)
  ET:am-ET:埃塞俄比亚(ኢትዮጵያ)
  FI:fi-FI:芬兰(Suomi)
  FI:sv-FI:芬兰(芬兰)
  FI:se-FI:芬兰(Suopma)
  FI:sms-FI:芬兰(Lää'ddjânnam)
  FI:smn-FI:芬兰(Suomâ)
  FO:fo-FO:法罗群岛(Føroyar)
  FR:fr-FR:法国(法国)
  FR:br-FR:法国(Frañs)
  FR:oc-FR:法国(França)
  FR:co-FR:法国(法国)
  FR:gsw-FR:法国(Frànkrisch)
  GB:cy-GB:英国(y Deyrnas Unedig)
  GB:gd-GB:英国(AnRìoghachdAonaichte)
  GB:zh-CN:英国(英国)
  GE:ka-GE:Georgia(საქართველო)
  GL:kl-GL:格陵兰岛(Kalaallit Nunaat)
  GR:el-GR:希腊(Ελλάδα)
  GT:qut-GT:危地马拉(危地马拉)
  GT:es-GT:危地马拉(危地马拉)
  HK:zh-HK:Hong Kong SAR(香港特别行政区)
  HN:es-HN:洪都拉斯(洪都拉斯)
  HR:hr-HR:克罗地亚(Hrvatska)
 胡:胡:匈牙利(Magyarország)
  ID:id-ID:印度尼西亚(印度尼西亚)
  IE:ga-IE:爱尔兰(Éire)
  IE:en-IE:爱尔兰(爱尔兰)
  IL:他-IL:以色列(ישראל)
  IN:hi-IN:India(भारत)
  IN:bn-IN:印度(ভারত)
  IN:pa-IN:印度(ਭਾਰਤ)
  IN:gu-IN:印度(ભારત)
  IN:or-IN:印度(ଭାରତ)
  IN:ta-IN:印度(இந்தியா)
  IN:te-IN:印度(其他)
  IN:kn-IN:印度(ಭಾರತ)
  IN:ml-IN:印度(ഭാരതം)
  IN:as-IN:印度(ভাৰত)
  IN:先生:印度(भारत)
  IN:sa-IN:印度(भारतम्)
  IN:kok-IN:India(भारत)
  IN:en-IN:印度(印度)
 智商:智商:伊拉克(العراق)
  IR:fa-IR:伊朗(ایران)
  IS:is-IS:冰岛(Ísland)
  IT:it-IT:意大利(意大利)
  JM:en-JM:牙买加(牙买加)
  JO:ar-JO:Jordan(الأردن)
  JP:ja-JP:日本(日本)
  KE:sw-KE:肯尼亚(肯尼亚)
  KG:ky-KG:吉尔吉斯斯坦(Кыргызстан)
  KH:km-KH:柬埔寨(កម្ពុជា)
  KR:ko-KR:韩国(대한민국)
  KW:ar-KW:科威特(الكويت)
  KZ:kk-KZ:哈萨克斯坦(Қазақстан)
 洛杉矶:洛杉矶:老挝人民民主共和国(ສ。ປ。ປ。ລາວ。)
  LB:ar-LB:黎巴嫩(لبنان)
 李:德利:列支敦士登(列支敦士登)
  LK:si-LK:斯里兰卡(ශ්රීලංකා)
  LT:LT-LT:立陶宛(Lietuva)
  LU:lb-LU:卢森堡(卢森堡)
  LU:de-LU:卢森堡(卢森堡)
  LU:fr-LU:卢森堡(卢森堡)
  LV:lv-LV:拉脱维亚(Latvija)
  LY:ar-LY:利比亚(ليبيا)
  MA:ar-MA:摩洛哥(المملكةالمغربية)
  MC:fr-MC:摩纳哥公国(摩纳哥公国)
  ME:sr-Latn-ME:黑山(Crna Gora)
  ME:sr-Cyrl-ME:黑山(ЦрнаГора)
  MK:mk-MK:马其顿(前南斯拉夫马其顿共和国)(Македонија)
  MN:mn-MN:蒙古(Монголулс)
  MO:zh-MO:澳门特区(澳门特别行政区)
  MT:mt-MT:马耳他(马耳他)
  MV:dv-MV:马尔代夫(ދިވެހިރާއްޖެ)
  MX:es-MX:墨西哥(墨西哥)
  MY:ms-MY:马来西亚(马来西亚)
  MY:en-MY:马来西亚(马来西亚)
  NG:ha-Latn-NG:尼日利亚(尼日利亚)
  NG:yo-NG:尼日利亚(尼日利亚)
  NG:ig-NG:尼日利亚(尼日利亚)
  NI:es-NI:尼加拉瓜(尼加拉瓜)
  NL:nl-NL:荷兰(荷兰)
  NL:fy-NL:荷兰(Nederlân)
  NO:nb-NO:挪威(Norge)
  NO:se-NO:挪威(Norga)
  NO:nn-NO:挪威(Noreg)
  NO:smj-NO:挪威(Vuodna)
  NO:sma-NO:挪威(Nöörje)
  NP:ne-NP:尼泊尔(नेपाल)
 新西兰:mi-NZ:新西兰(Aotearoa)
 新西兰:新西兰:新西兰(新西兰)
  OM:ar-OM:阿曼(عمان)
  PA:es-PA:巴拿马(巴拿马)
  PE:quz-PE:秘鲁(秘鲁苏宇)
  PE:es-PE:秘鲁(秘鲁)
  PH:fil-PH:菲律宾(Pilipinas)
  PH:en-PH:菲律宾共和国(菲律宾)
  PK:ur-PK:巴基斯坦伊斯兰共和国(پاکستان)
  PL:pl-PL:波兰(波兰)
  PR:es-PR:波多黎各(波多黎各)
  PT:pt-PT:葡萄牙(葡萄牙)
  PY:es-PY:巴拉圭(巴拉圭)
 质量保证:ar-QA:卡塔尔(قطر)
  RO:ro-RO:罗马尼亚(罗马尼亚)
  RS:sr-Latn-RS:塞尔维亚(Srbija)
  RS:sr-Cyrl-RS:塞尔维亚(Србија)
  RU:ru-RU:俄罗斯(Россия)
  RU:tt-RU:俄罗斯(Россия)
  RU:ba-RU:俄罗斯(Россия)
  RU:sah-RU:俄罗斯(Россия)
  RW:rw-RW:卢旺达(卢旺达)
  SA:ar-SA:沙特阿拉伯(المملكةالعربيةالسعودية)
  SE:sv-SE:瑞典(Sverige)
  SE:se-SE:瑞典(Ruoŧŧa)
  SE:smj-SE:瑞典(Svierik)
  SE:sma-SE:瑞典(Sveerje)
  SG:zh-SG:Singapore(新加坡)
  SG:en-SG:新加坡(新加坡)
  SI:sl-SI:斯洛文尼亚(斯洛文尼亚)
  SK:sk-SK:斯洛伐克(Slovenskárepublika)
  SN:wo-SN:塞内加尔(塞内加尔)
  SV:es-SV:萨尔瓦多(萨尔瓦多)
  SY:syr-SY:叙利亚(سوريا)
  SY:ar-SY:叙利亚(سوريا)
  TH:th-TH:泰国(ไทย)
  TJ:tg-Cyrl-TJ:塔吉克斯坦(Тоҷикистон)
  TM:tk-TM:土库曼斯坦(Türkmenistan)
  TN:ar-TN:突尼斯(تونس)
  TR:tr-TR:土耳其(Türkiye)
  TT:en-TT:特立尼达和多巴哥(特立尼达和多巴哥)
  TW:zh-TW:台湾(台湾)
  UA:uk-UA:乌克兰(Україна)
 美国:en-US:美国(美国)
 美国:es-US:美国(Estados Unidos)
  UY:es-UY:乌拉圭(乌拉圭)
  UZ:uz-Latn-UZ:乌兹别克斯坦(Uzzbekiston Respublikasi)
  UZ:uz-Cyrl-UZ:乌兹别克斯坦(ЎзбекистонРеспубликаси)
  VE:es-VE:委内瑞拉玻利瓦尔共和国(委内瑞拉玻利瓦尔共和国)
  VN:vi-VN:越南(ViệtNam)
 是:ar-YE:也门(اليمن)
  ZA:tn-ZA:南非(Aforika Borwa)
  ZA:xh-ZA:南非(uMzantsi Afrika)
  ZA:zu-ZA:南非(iNingizimu Afrika)
  ZA:af-ZA:南非(Suid Afrika)
  ZA:nso-ZA:南非(Afrika Borwa)
  ZA:en-ZA:南非(南非)
  ZW:en-ZW:津巴布韦(津巴布韦)