java - 无法获得亚美尼亚月份的名字

标签 java localization calendar locale

我想打印亚美尼亚月份名称,但它不起作用。这是我的代码:

Locale loc = new Locale("hy");
Calendar cal = Calendar.getInstance(loc);
System.out.println(cal.getDisplayName(Calendar.MONTH, Calendar.LONG_STANDALONE, loc));

我试过许多其他缩写,如“hye”或“arm”,但没有任何效果。其他语言如俄语“ru”工作正常。我不知道我做错了什么

最佳答案

有一个 enhancement in JDK8其中 CLDR 的基于 XML 的语言环境数据已合并到 JDK 8 版本中,但默认情况下它是禁用的。 因此,如果您使用参数 -Djava.locale.providers=CLDR 运行代码或通过 java.locale.providers System.property< 添加相同的代码 在你的代码中,hy: 亚美尼亚语 hy_AM: 亚美尼亚语 将被支持。

JDK 9 enhancements ,默认情况下启用 CLDR 区域设置数据。因此,代码将在不添加任何系统属性的情况下运行。 希望这会有所帮助。

关于java - 无法获得亚美尼亚月份的名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43228492/

相关文章:

Java - 当对象的任何属性发生变化时触发事件

java - Java/Spring 中 Web 表单支持对象可接受的命名约定是什么?

java - RDF4J:EC2 上出现 "Failed to get server protocol"错误,但本地没有

ios - 如何在 XCode 9 中将对象 ID 添加到本地化的 Storyboard?

python `YYYY-MM-DD`

java - 在 Rest Web 方法中传递 JSON 对象

ios - WatchKit 如何创建自定义 Localizable.strings 文件?

swift - Swift 2.0/Xcode 7.2 中的本地化/国际化

java - 两个日期之间的 Android 天数

javascript - 调整日期差异