如何使用CultureInfo
识别操作系统的语言?例如。如果Windows中的语言设置为法语,我需要识别法语并加载fr
资源文件数据。
我认为像这样的东西会给你当前的CultureInfo:
CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;
这就是你要找的东西吗?
这是我用过的:
var culture = System.Globalization.CultureInfo.CurrentCulture;
它正在工作:)
使用以下方法检索当前系统语言
CultureInfo.InstalledUICulture
“获取表示随操作系统安装的文化的CultureInfo。”
要将其设置为线程使用的默认语言:
System.Globalization.CultureInfo.DefaultThreadCurrentCulture=CultureInfo.InstalledUICulture;
我尝试了{CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;}
,但它对我没有用,因为我的UI文化与我的数字/货币文化不同。所以我建议你使用:
CultureInfo currentCulture = Thread.CurrentThread.CurrentUICulture;
这将为您提供UI的文化(窗口,消息框等文本)。
要获得2个字符ISO 639-1语言标识符,请使用:
System.Threading.Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName;