获取非英语语言的国家列表我可以使用下面的代码获取国家名称列表,(从某处复制我不记得了)我的问题是,我可以得到其他语言的国家列表吗,比如泰国?//////用于生成国家/地区列表的方法,例如使用国家/地区选项填充///组合框。我们返回通用列表中的///值//////publicstaticListGetCountryList(){//创建一个新的通用列表来保存返回的国家名称列表cultureList=newList();//创建一个CultureInfo数组来保存找到的所有文化,这些包括用户本地文化,以及所有//使用.NetFramework安装的文化CultureInfo[]cultures=CultureInfo.GetCultures(CultureTypes.AllCultures&~CultureTypes.NeutralCultures);//遍历找到的所有文化foreach(CultureInfocultureincultures){//将当前文化的区域设置ID(http://msdn.microsoft.com/en-us/library/0h88fahh.aspx)//传递给RegionInfo构造函数以访问该文化的信息RegionInforegion=newRegionInfo(文化。LCID);//确保通用列表还没有//包含这个国家if(!(cultureList.Contains(region.EnglishName)))//不存在所以添加EnglishName(http://msdn.microsoft.com/en-us/library/system.globalization.regioninfo.englishname.aspx)//我们通用列表的值cultureList.Add(region.EnglishName);}返回文化列表;}http://msdn.microsoft.com/en-us/library/system.globalization.regioninfo.displayname.aspxDisplayName属性以.NETFramework本地化版本的语言显示国家/地区名称例如,DisplayName属性在英文版的.NETFrameworkLocale中以英文显示国家/地区,在西班牙文版的.NETFramework中以西班牙文显示。所以看起来.NETFramework中没有每种语言的国家名称列表,只有安装.NETFramework的语言。使用DisplayName(为您提供当前FrameworkNativeName中的名称)或NativeName(给你本地文化中的名字)而不是EnglishName。很晚的答案:在我的应用程序中,用户可以选择一种语言(在应用程序支持的语言中),并且在UI中我需要以所选语言显示国家/地区名称。我发现NuGet包IsoNames可用于此目的。它提供方法IsoNames.CountryNames.GetName(CultureInfoculture,stringcountrycode);从而克服DisplayName隐含的限制。以上就是C#学习教程:获取非英文语言国家列表分享的所有内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:
