CultureInfo conversions (C#)
本文关键字:conversions CultureInfo | 更新日期: 2023-09-27 18:27:39
是否可以通过TwoLetterISOLanguageName获取特定的CultureInfo?只有一个getter,而不是setter。。。你会怎么做。如果可能的话,不需要经历所有的文化。。。
所以不使用:
// Get all available cultures on the current system.
CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.AllCultures);
foreach (var culture in cultures) {
// Exclude custom cultures.
if ((culture.CultureTypes & CultureTypes.UserCustomCulture) == CultureTypes.UserCustomCulture)
continue;
if (culture.TwoLetterISOLanguageName == "<Whatever>"){
//Do some stuff
break;
}
}
http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.twoletterisolanguagename.aspx
第二:
有可能将语言显示为该语言中所说的语言吗
喜欢
*荷兰->荷兰
*德语->德语
*西班牙语->西班牙语
您可以使用构造函数,例如
CultureInfo germanCulture = new CultureInfo("DE");
CultureInfo russianCulture = new CultureInfo("RU");
String germanNativeLanguage = germanCulture.NativeName; // <- Deutsch
String russianNativeLanguage = russianCulture.NativeName; // <- русский
String germanLanguage = germanCulture.EnglishName; // <- German
String russianLanguage = russianCulture.EnglishName; // <- Russian
使用CultureInfo(string)
构造函数:
var culture = new CultureInfo("<Whatever>");
它也适用于没有两个字母的文化名称的文化
如果ISO 639-1没有为特定区域性定义两个字母的语言代码,则
TwoLetterISOLanguageName
属性将返回一个由三个或更多字母组成的字符串。
例如,下索布省(德国):
var culture = new CultureInfo("dsb");
您可以使用构造函数,但我更喜欢使用静态方法GetCultureInfo
,因为文档明确表示它返回缓存的实例:
var ci = CultureInfo.GetCultureInfo("<TwoLetterISOLanguageName>");