从十六进制值中获取单个字节

Getting individual bytes from hexadecimal value

有没有一种方法可以从 java

中的十六进制值中获取单个字节

如果我有一个十六进制值0x190(400),我想得到0x90和0x01 如果我有一个十六进制值0x89(137),我想得到0x89和0x00

我是新手,无法找到单独获取它们的方法。

提前感谢您的帮助

谢谢 R

如果您的数字表示为整数值,您可以使用位掩码来隔离特定字节。

int value = 0x190;

byte byteValue = (byte) ((value >>> i*8) & 0xff);
String byteAsString = String.format("0x%02x", byteValue);

其中i表示第i个字节(从0开始)

如果是字符串值

像这样:

let hexDecimal = "0x89(137)";
let splitValue = hexDecimal .split("(");
let response =  splitValue[0]; `