将String转换为Long android

时间:2016-03-02 07:50:07

标签: java android

我有值String“2248880.0”,我想在android中使用代码转换为Long:

Long.parseLong( "2248880.0");

但我得错误

  

java.lang.NumberFormatException:无效长:“2248880.0”

所以如何解决?

4 个答案:

答案 0 :(得分:7)

这不是Long值,因此您需要先将其解析为Double或Float。之后你可以将它投射到Long。

或者您可以从字符串中删除.000。

答案 1 :(得分:3)

java.lang.NumberFormatException: Invalid long: "2248880.0"
  

NumberFormatException是一个可能在您抛出的异常   尝试将String转换为数字,其中该数字可能是一个数字   int,float或任何其他Java数字类型。

首先删除.

然后使用。

long YourLongObj = Long.parseLong("Your_string");

请阅读 How can I convert String to Double without losing precision in Java

答案 2 :(得分:3)

使用此 -

getFilesDir()

这会将您的答案(long value = (long) Double.parseDouble("2248880.0"); 类型)转换为double类型。

答案 3 :(得分:1)

首先声明一个长变量:

long l;

然后初始化它:

l= (long) Double.parseDouble("2248880.0");

这是因为您拥有的值是双重格式,因此您必须首先将其解析为double,然后从double解析为long。