我正在解析库存数据并尝试将其放入SQL数据库中。解析中的所有信息都以字符串形式检索。我正在使用Integer.parseInt()方法尝试将字符串转换为整数以获取某些信息。我遇到的问题是更改数据。当它是一个积极的变化时,这个数字有一个" +"在它前面签名,我收到一个错误:
Exception in thread "main" java.lang.NumberFormatException: For input string: "+0.14" //
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) //
at java.lang.Integer.parseInt(Integer.java:492) //
at java.lang.Integer.parseInt(Integer.java:527) //
at getStockData.main(getStockData.java:91)" (the //s are to signify end lines, having issues with formatting)
我的输出是:
Ticker ID: MSFT: Change - [+0.14]
int Change = Integer.parseInt(di.getTextContent());
我现在还不知道如何解决这个错误,并且在谷歌搜索/搜索stackoverflow之后找不到任何类似的内容。
答案 0 :(得分:9)
问题是0.14
不是有效int
。尝试使用Double.parseDouble(String)
来解析double
值。像
double v = Double.parseDouble("+0.14");
System.out.println(v);
输出
0.14