如何找到给定语言环境的语言?
示例:输入:en_US 输出:英文
使用.NET库?我尝试过CultureInfo类,但我找不到有用的东西。
谢谢!
答案 0 :(得分:14)
不要使用CultureInfo
的构造函数。使用静态GetCultureInfo
方法更快,因为此方法被缓存并返回不可变(只读)CultureInfo
对象。
根据Facebook SDK documentation concerning localization,可以安全地假设您可以用短划线替换下划线,以便.NET能够理解语言环境。
Facebook区域设置遵循ISO语言 和国家代码, 由下划线连接。
基本格式为'll_CC'',其中 ''ll''是一个双字母的语言代码, 和''CC''是一个双字母的国家 码。例如,'en_US'代表 美国英语。
取决于您是否需要以英语显示名称而不管操作系统的语言,请使用
CultureInfo.GetCultureInfo("en-US").EnglishName
如果您需要操作系统语言的名称,请使用:
CultureInfo.GetCultureInfo("en-US").DisplayName
答案 1 :(得分:9)
你需要使用en-US而不是en_US代码如下:
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
string name = culture.DisplayName;
输出:英语(美国)
答案 2 :(得分:2)
System.Globalization.CultureInfo.GetCultureInfo("en-US").EnglishName;
答案 3 :(得分:0)
您可以使用以下代码
Dim culture1 As CultureInfo = New CultureInfo("en-US")
Dim t As Thread = Thread.CurrentThread
Dim currentCulture As CultureInfo = t.CurrentCulture
Dim currentUICulture As CultureInfo = t.CurrentUICulture
'*** display cultures in console
Console.WriteLine("Current Culture: " & currentCulture.Name)
Console.WriteLine("Current UI Culture: " & currentUICulture.Name)