Java DecimalFormat瑞典语言环境“ se_SV”负数格式

时间:2018-11-20 17:00:09

标签: java

所以我坐在一些我设置为Java 1.8_181的旧代码(java SE)上,在java.text.DecimalFormat停止使用负数的过程中。下面的示例代码显示了该问题:

    DecimalFormatSymbols dfs = new DecimalFormatSymbols(new Locale("sv", "SV"));
    DecimalFormat tmp = new DecimalFormat("#,##0", dfs);
    String test = "-150";
    Number num = null;
    try {
        num = tmp.parse(test);
    } catch (ParseException e) {
        e.printStackTrace();
    } finally {
        System.out.println("Number comma is: "+num);
    } 

给我以下异常:

java.text.ParseException: Unparseable number: "-150"
    Number comma is: null
at java.base/java.text.NumberFormat.parse(NumberFormat.java:431)
at Main.Main.main(Main.java:90)

根据git,项目文件在master上说它是Java 1.8(32位),我不知道是哪个Java 1.8构建,但我当前正在使用Java 1.8_181(64位)。

但是,在旧的.jar文件中,此示例并未引发ParseException,这是在我开始使用代码时出现的。

有人知道不会在字符串中解析“-”吗?

0 个答案:

没有答案