无法将CSV中的值解析为Double

时间:2019-01-07 11:35:12

标签: java csv numberformatexception

我的问题是将CSV值解析为两倍。我不明白为什么我可以解析A-BJ列中的所有值以及当我遇到BK列时Java抛出错误

Exception in thread "main" java.lang.NumberFormatException: For input string: "4,69E+12"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at sun.misc.FloatingDecimal.parseDouble(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at Compare.normalizacja_dziesietna(Compare.java:68)
at Compare.main(Compare.java:138)

例如在columnt BE中也有一个很大的数字,并且解析没有问题...

这里有文件https://pasteboard.co/HVkMt4L.png的屏幕截图

2 个答案:

答案 0 :(得分:1)

Double.parseDouble期望4.69E+12而不是4,69E+12

示例:

Double.parseDouble("4,69E+12".replaceAll(",", "\\."));

答案 1 :(得分:0)

您应该改用BigDecimal。

了解更多here