如何从 .NET 中的 CultureInfo 获取 ISO 3166 国家代码

Posted

技术标签:

【中文标题】如何从 .NET 中的 CultureInfo 获取 ISO 3166 国家代码【英文标题】:How to get ISO 3166 Country Code from CultureInfo in .NET 【发布时间】:2019-04-08 09:03:50 【问题描述】:

给定一个CultureInfo 对象,我如何获得两个字符的 ISO 3166 国家代码?例如。来自en-US,我想要US,来自en-GB,我想要GB。我还需要处理文化可能没有国家代码的情况。

【问题讨论】:

【参考方案1】:

使用RegionInfo-class 检索两个(或三个)字母的iso 区域名称:

RegionInfo usa = new RegionInfo("en-US");           
string isoUSA = usa.TwoLetterISORegionName;

RegionInfo gb = new RegionInfo("en-GB");
string isoGB = gb.TwoLetterISORegionName;

如果您尝试将无效值传递给构造函数,您可能希望捕获可能发生的异常。

【讨论】:

以上是关于如何从 .NET 中的 CultureInfo 获取 ISO 3166 国家代码的主要内容,如果未能解决你的问题,请参考以下文章