web-dev-qa-db-ja.com

Javaで10進整数から16進値を取得する方法は?

Javaで整数値から16進数の「0x83」文字を生成する方法がわかりません。

キリル文字のアルファベット(この文字:ѓ)を表すには、プリンターに(文字)を送信するために「0x83」値が必要です。コンバーター(下)で131(10進数で0x83)を16進数に変換すると、0x31、0x33、0x31の3つの数値が得られます。

public String toHex(String arg) {
    return String.format("%x", new BigInteger(arg.getBytes()));
}

この変換から0x83を取得する必要があります。

13
Ballon

整数131を16進文字列に変換しようとしている場合は、試すことができます

Integer.toHexString( 131 )

文字列として「83」を返します。

40
Nishan

次に例を示します。

String str = Integer.toHexString(131);
System.out.println(str);
12
Ankit
String cyrillic = Character.toString((char)0x83)
2
JJ3

変換するときに問題は表示されません:

System.out.println(Integer.toHexString(131));

83を返します。

0
ilalex

2つの可能性、プリンターがバイトまたは文字列/文字として0x83を必要とする

バイトとして送信:

int Cyrillic_int = 131; 
byte Cyrillic = (byte) Cyrillic_int;

または、0x83の文字列表現を送信します。

int Cyrillic_int = 131;
String Cyrillic = Integer.toHexString(131);
0
Hammad

Java Integer API をチェックアウトしてみましたか。いくつかの 例:

0
posdef