如何在java中将大字符串转换为整数?

use*_*151 5 java string hex biginteger parseint

给出以下字符串:

3132333435363738396162636465666768696a6b6c6d6e6f70
Run Code Online (Sandbox Code Playgroud)

我将字符串转换为十六进制,现在我想将其写为十六进制而不是字符串.我尝试将其转换为int但Integer.parseInt仅转换为4,如果超出此范围,则会产生错误.

Jon*_*eet 8

你尝试过BigInteger构造函数的字符串和基数吗?

BigInteger value = new BigInteger(hex, 16);
Run Code Online (Sandbox Code Playgroud)

示例代码:

import java.math.BigInteger;

public class Test {

    public static void main(String[] args) {
        String hex = "3132333435363738396162636465666768696a6b6c6d6e6f70";
        BigInteger number = new BigInteger(hex , 16);
        System.out.println(number); // As decimal...
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

308808885829455478403317837970537433512288994552567292653424
Run Code Online (Sandbox Code Playgroud)