長めの16進数を10進数に変換する方法です。
Javaの進数変換は簡単です。
16進数から10進数に変換したい場合は以下のように設定します。
Integer.parseInt(String s, int radix);;
Long.parseLong(String s, int radix);
※radixには基数「16」を設定する。
しかし、変換できるのは型の範囲内まで。
最小値、最大値の範囲外だと「NumberFormatException」というエラーが発生します。
intとlongの範囲は次の通り。
- int:-2147483648~2147483647
- long:-9223372036854775808~9223372036854775807
longを超えるさらに大きな整数を扱いたい場合、
BigIntegerを使用します。
構文は以下の通りです。
new BigInteger(String val, int radix);
これでlongの範囲外でも16進数を10進数に変換することができます。
便利ですね。
※byte[]変換して頑張っている記事があったので参考に書いてみました。
以上、長い16進数を10進数に変換する方法でした。
スポンサーリンク