1

base16文字列をbase32文字列に変換したい。たとえば、base-16の文字列-"000000000288"がある場合、base-32の対応する文字列( "K-8")に変換します。

それを行うウェブサイトがあります:

http://www.unitconversion.org/unit_converter/numbers.html

4

2 に答える 2

2

私はあなたがこのようにそれを行うことができると思います:

int number = Integer.parseInt("000000000288", 16);
String base32 = Integer.toString(number, 32);

編集:申し訳ありませんが、基数パラメーターを最初の行に追加するのを忘れました。今変更しました。

于 2012-07-09T11:39:36.547 に答える
1

私は、JavaのBigIntegerが、ビット操作のためにそれらすべての中で最高であると思います。その幅広い使用法(主に膨大な数を格納する場合、メモリスタックまで、サポートされているさまざまな操作を可能にする)の中で、2から36へのベース変換のオプションがあります。

サンプルコード:

BigInteger num=new BigInteger("000000000288",16);     //Store as Hexa

//Display the result using BigInteger.toString(radix)
System.out.println("Result = "+num.toString(32));    //Showing result in 32 base

もちろん、小数部分を持つ数を扱っている場合は、Magicodeの方法を使用する必要がありますInteger.toString(radix)。または、数値が格納できる数よりも大きい場合はint、小数部の基数変換に対して独自の関数を実行することをお勧めします。

于 2017-02-17T18:32:26.023 に答える