在Java中,如何解析大于int size的字符串

时间:2012-02-29 00:04:25

标签: java parsing

我有一个大于2,147,483,647的字符串,我需要解析它。

表示Integer.parseInt没有工作,它会抛出异常。

3 个答案:

答案 0 :(得分:8)

Integer.parseInt 无法完成这项工作,除非您乐意丢失数据。想想你在这里要求的东西。

尝试使用Long.parseLong(String)new BigInteger(String)作为非常大的整数。

答案 1 :(得分:1)

还有另一种称为Long的类型,可以存储最多2^63 - 1的数字。尝试使用java.text.NumberFormat将字符串解析为long:

    NumberFormat format = NumberFormat.getInstance(java.util.Locale.US);

    Number number = format.parse("2,147,483,647");
    Long value = number.longValue();

答案 2 :(得分:0)

我假设你去了String,因为int无法保持你的价值。这不是必需的。您可以直接使用BigInteger,它可以处理更大的值。