我的问题是将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的屏幕截图
答案 0 :(得分:1)
Double.parseDouble
期望4.69E+12
而不是4,69E+12
。
示例:
Double.parseDouble("4,69E+12".replaceAll(",", "\\."));
答案 1 :(得分:0)
您应该改用BigDecimal。
了解更多here