次の文字列を指定します。
3132333435363738396162636465666768696a6b6c6d6e6f70
文字列を16進数に変換しましたが、文字列ではなく16進数としてファイルに書き込みたいと思います。私はそれをintに変換しようとしましたが、Integer.parseInt
最大4つしか変換できず、それを超えるとすでにエラーが発生します。
次の文字列を指定します。
3132333435363738396162636465666768696a6b6c6d6e6f70
文字列を16進数に変換しましたが、文字列ではなく16進数としてファイルに書き込みたいと思います。私はそれをintに変換しようとしましたが、Integer.parseInt
最大4つしか変換できず、それを超えるとすでにエラーが発生します。
BigInteger
文字列と基数を取るコンストラクターを試しましたか?
BigInteger value = new BigInteger(hex, 16);
サンプルコード:
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...
}
}
出力:
308808885829455478403317837970537433512288994552567292653424
BigIntegerを使用します。コンストラクターの 1 つは基数を取ります。
BigInteger value = new BigInteger(hexString, 16);