-2

我正在尝试在 java 中解析字符串 a ,这是我得到的错误。

<gx:coord>10,8638931 44,6106521 0</gx:coord>

 

Exception in thread "main" java.lang.NumberFormatException: For input string: "10,8638931"
    at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
    at java.lang.Double.parseDouble(Unknown Source)
    at parser.history.Main.main(Main.java:28)

谁能告诉我为什么?

4

2 回答 2

1

Double.parseDouble方法不接受带有逗号的数字。输入字符串必须符合 .java 文档中描述的语法Double.valueOf(String)

如果你想解析其他格式的数字,你应该看看这个DecimalFormat类,特别是它的parse方法。根据具体情况,您可以DecimalFormat从 Locale 获取一个实例......或者使用给定的模式和符号专门创建它。

于 2013-05-11T09:20:58.963 回答
0

java使用而不是逗号来解析浮点数。

称呼

String.replace(',','.')

在调用 Double.parseDouble 之前

于 2013-05-11T09:19:20.133 回答