十进制字符串转byte十六进制数组
时间: 2023-11-17 17:08:56 浏览: 99
可以使用Java中的Integer类的parseInt方法将十进制字符串转换为int类型,然后再使用Integer类的toHexString方法将int类型转换为十六进制字符串。接着,可以使用String类的getBytes方法将十六进制字符串转换为byte数组。下面是一个示例代码:
```
public static byte[] hexStringToByteArray(String s) {
int len = s.length();
byte[] data = new byte[len / 2];
for (int i = 0; i < len; i += 2) {
data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+ Character.digit(s.charAt(i+1), 16));
}
return data;
}
public static byte[] decimalStringToHexByteArray(String s) {
int decimal = Integer.parseInt(s);
String hexString = Integer.toHexString(decimal);
if (hexString.length() % 2 != 0) {
hexString = "0" + hexString;
}
return hexStringToByteArray(hexString);
}
```
阅读全文