2013-07-24 15 views
10

非常に大きなバイナリ値を10進数に変換する必要がありました。私はBigIntegerを使用していた大きな整数です。だから私はどのようにBigIntegerにこの2進数を変換するのですか?バイナリ番号をJavaのBigIntegerに変換するにはどうすればよいですか?

+6

はどのように我々はこの2進数を持っていますか?バイト配列として? – hexafraction

+0

その文字列で... – Daanish

答えて

14

あなた進数のString表現を持っている場合は、インスタンスを作成するには、このオーバーロードさBigIntegerコンストラクタにそれを提供します。あなたはこのようなものを使用することができ、すなわち、あなたの場合は

BigInteger(String val, int radix); 

を、基数は、はっきりと2です:

BigInteger yourNumber = new BigInteger("101000101110...1010", 2); 
4

バイナリストリングを使用している場合は、BigIntegerのように変換できます。

String binaryString = "1010110101011010101010101101010101100101011010001010001100101110"; 
BigInteger bigInt = new BigInteger(binaryString, 2); 
2
String binaryValue = "11111111"; 
    BigInteger bi = new BigInteger(binaryValue, 2); 
関連する問題