Java Locale.getDefault()无法返回除en以外的值
我在Java中遇到了一些问题,我想从窗口计算机获取系统区域设置国家/地区,因此我编写如下代码:Java Locale.getDefault()无法返回除en以外的值,java,spring,spring-boot,Java,Spring,Spring Boot,我在Java中遇到了一些问题,我想从窗口计算机获取系统区域设置国家/地区,因此我编写如下代码: Locale x = Locale.getDefault(); String output = x.getCountry(); 如果我将我的系统语言设置为“喜欢英语”(新加坡),我将得到en SG的结果,如果我将我的系统语言设置为“英语”(加拿大),它也将返回带有en CA的结果,但如果我更改为非英语的语言,它将返回所有选项的en GB,为什么会这样 除此之外,还有其他方法可以使用java获取当
Locale x = Locale.getDefault();
String output = x.getCountry();
如果我将我的系统语言设置为“喜欢英语”(新加坡),我将得到en SG的结果,如果我将我的系统语言设置为“英语”(加拿大),它也将返回带有en CA的结果,但如果我更改为非英语的语言,它将返回所有选项的en GB,为什么会这样
除此之外,还有其他方法可以使用java获取当前国家信息吗?Locale.getDefault()应该从操作系统中提取。这就是目的
我不认为这是Java的问题。我只是试着改变我的语言,它起作用了
我的设置是:
我必须注销并登录才能激活另一种语言。您好,谢谢您的帮助!我可以问一下,当您使用语言de_de时,您是否能够将语言环境设置为de_de?我将语言输出添加到您的代码中,并在更改语言和注销/登录后在控制台上执行它