从十六进制值中获取单个字节
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]; `
有没有一种方法可以从 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]; `