首页 新闻 会员 周边 捐助

c#如何获取系统语言

0
[已解决问题] 解决于 2014-04-27 17:40

系统当前语言是English,为什么获取到的还是“zh-CN”,我想获取英文的语言

余莎莎的主页 余莎莎 | 初学一级 | 园豆:185
提问于:2014-04-22 20:51
< >
分享
最佳答案
0

我这里系统当前语言是English,通过下面的代码获取到的是en-US

Console.WriteLine(System.Threading.Thread.CurrentThread.CurrentCulture.Name);
奖励园豆:5
dudu | 高人七级 |园豆:30925 | 2014-04-22 22:09

可是我获取到的还是zh-CN,已经把系统语言改为英文的了

余莎莎 | 园豆:185 (初学一级) | 2014-04-23 09:23

@余莎莎: 可能不仅需要设置语言,还要设置区域

dudu | 园豆:30925 (高人七级) | 2014-04-23 09:45
其他回答(2)
0
hailants | 园豆:750 (小虾三级) | 2014-04-22 21:40

谢谢,这个我已经看过了,还是不行

支持(0) 反对(0) 余莎莎 | 园豆:185 (初学一级) | 2014-04-23 09:25

@余莎莎: 

补充,OS 有三种设置相对应:

1,就是当前所在区域,可以用上面的方法获得
2,OS 当前选择的默认语言,可以用GetSystemDefaultLangID
3,OS 系统自己的语言,可以从GetSystemDefaultLCID 或 GetOEMCP 获得

 

2和3,你所说的系统当前语言应该是指情况2

支持(0) 反对(0) hailants | 园豆:750 (小虾三级) | 2014-04-23 09:30
2

System.Globalization.CultureInfo.InstalledUICulture.Name
这是获得英文的区域码,也就是zh-cn的这种,需要找区域码字典对照。
System.Globalization.CultureInfo.InstalledUICulture.NativeName
这是翻译成中文的那种。

血气方刚 | 园豆:24 (初学一级) | 2014-04-23 12:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册