Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何用英语转换荷兰语金额?_Java_Number Formatting - Fatal编程技术网

Java 如何用英语转换荷兰语金额?

Java 如何用英语转换荷兰语金额?,java,number-formatting,Java,Number Formatting,我正在用java解析一个荷兰语格式的XML文件。在该文件中,有一些金额与荷兰地区一致。 例如:TaxTotal=1.027120000 此金额在字符串中。 我想将此金额转换为英语语言环境中的两倍,如下所示: TaxTotal=1027.12 现在,该金额应转换为双倍格式,如下所示: TaxTotal=1027.12 我的问题是如何将1.027120000转换为1027.12,然后再转换为1027.12。使用,明确设置要使用的: Number number = NumberFormat.getIn

我正在用java解析一个荷兰语格式的XML文件。在该文件中,有一些金额与荷兰地区一致。 例如:TaxTotal=1.027120000 此金额在字符串中。 我想将此金额转换为英语语言环境中的两倍,如下所示: TaxTotal=1027.12 现在,该金额应转换为双倍格式,如下所示: TaxTotal=1027.12

我的问题是如何将1.027120000转换为1027.12,然后再转换为1027.12。

使用,明确设置要使用的:

Number number = NumberFormat.getInstance(Locale.GERMANY).parse("1.027,120000");
System.out.println(NumberFormat.getInstance(Locale.ENGLISH).format(number)); // 1,027.12
System.out.println(number.doubleValue()); // 1027.12
请尝试以下代码:

    String sInput1 = "1.027,120000";
    DecimalFormatSymbols dfsin = DecimalFormatSymbols.getInstance();
    dfsin.setDecimalSeparator(',');
    dfsin.setGroupingSeparator('.');
    DecimalFormat df = new DecimalFormat();
    df.setDecimalFormatSymbols(dfsin);

    Number n = df.parse(sInput1);
    DecimalFormat df1 = new DecimalFormat("#.##");
    DecimalFormatSymbols dfsout = DecimalFormatSymbols.getInstance();
    dfsout.setDecimalSeparator('.');
    df1.setDecimalFormatSymbols(dfsout);
    System.out.println(df1.format(n));

那么,你被困在哪里了?为什么要转换两次?@T.J.Crowder我试图用语言环境设置数字格式。但是没有像Locale.dutch这样的荷兰语支持。对我来说,这就是阻碍问题