10

Javaでは、バイトの16進文字列表現(「1e」など)をバイト値に変換するにはどうすればよいですか?

例えば:

byte b = ConvertHexStringToByte("1e");
4

3 に答える 3

21

使用できますByte.parseByte("a", 16); が、これは 127 までの値に対してのみ機能します。それよりも大きい値は、符号付き/符号なしの問題により、バイトにキャストする必要があるため、int に転送してからバイトにキャストすることをお勧めします。

(byte) (Integer.parseInt("ef",16) & 0xff);
于 2013-09-12T10:19:41.710 に答える
15
Integer.parseInt(str, 16);
于 2009-09-23T16:08:20.827 に答える
12

Byte.parseBytebyte文字列表現を解析して aを返します。

署名付きのメソッドを使用すると(String, int)、基数を 16 として指定できるため、バイトの 16 進数表現を解析できます。

Byte.parseByte("1e", 16);
于 2009-09-23T16:17:00.567 に答える