区域设置ES_PE未正确呈现数字

时间:2013-08-20 14:22:36

标签: java jvm locale

Locale planet指定es_PE语言环境应使用“。”用于十进制和“,”用于分组。但是,当我在Oracle JVM上运行此单元测试时,它失败了:

public class TestLocale extends TestCase {

   public void test() {
       Locale locale = new Locale("es", "PE");
       DecimalFormatSymbols decimalFormatSymbols = new DecimalFormatSymbols(locale);

       assertEquals('.', decimalFormatSymbols.getDecimalSeparator());
       assertEquals(',', decimalFormatSymbols.getGroupingSeparator());

   }
}

据我们的支持人员报告,WAS 8上的数字也无法正确呈现。

知道如何在JVM级别修复此问题吗?对于这种特殊情况,我是否需要在应用程序中处理区域设置管理代码?

1 个答案:

答案 0 :(得分:1)

更改

Locale locale = new Locale("es", "PE");

Locale locale = new Locale("es_PE");

顺便说一下,PE来自秘鲁(我来自哪里)。