2013-02-25 34 views
0

我试图导入CSV文件到Java,但是当我到达时间戳值(例如:135824328205)我得到以下信息:的Java与NumberFormatException的CSV长转换

02-25 10:40:48.629: W/System.err(23341): java.lang.NumberFormatException: 1.35998E+12

我想将其作为长期价值存储,但它是行不通的,这是我的代码:

in.setTS(Long.parseLong(dataArray[2])); 

任何人都可以帮我吗? 谢谢。

+4

什么是dataArray中的[2]的内容是什么? – vikingsteve 2013-02-25 09:48:31

+0

'1.35998E + 12'不长 – PermGenError 2013-02-25 09:49:47

+0

@PremGenError:不是。但如果我用记事本打开csv,我会看到那里的长整数 – Karoly 2013-02-25 09:50:34

回答

1

正如你可以看到here

in.setTS(Double.valueOf(dataArray[2]).longValue()); 

的情况下dataArray[2]掌管相关的指数形式为字符串

BigInteger也可以帮助你在这里。

0

对于庞大的数字是用BigInteger

​​

假设dataArray[2]非常有用的是字符串

参考documentation