带有+号的字符串到Int

时间:2014-12-22 00:33:37

标签: java parsing

我正在解析库存数据并尝试将其放入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之后找不到任何类似的内容。

1 个答案:

答案 0 :(得分:9)

问题是0.14不是有效int。尝试使用Double.parseDouble(String)来解析double值。像

double v = Double.parseDouble("+0.14");
System.out.println(v);

输出

0.14