public static byte[] hexStringToBytes(String hexString) {
时间: 2023-07-25 08:06:15 浏览: 97
这是一个 Java 方法,用于将十六进制字符串转换为字节数组。具体实现如下:
```java
public static byte[] hexStringToBytes(String hexString) {
if (hexString == null || hexString.equals("")) {
return null;
}
hexString = hexString.toUpperCase();
int length = hexString.length() / 2;
char[] hexChars = hexString.toCharArray();
byte[] bytes = new byte[length];
for (int i = 0; i < length; i++) {
int pos = i * 2;
bytes[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));
}
return bytes;
}
private static byte charToByte(char c) {
return (byte) "0123456789ABCDEF".indexOf(c);
}
```
该方法首先判断输入的十六进制字符串是否为空,然后将其转换为大写字母形式。接着计算出字节数组的长度,并将十六进制字符串转换为字符数组。最后通过循环将每两个字符转换为一个字节,并将所有字节组成字节数组返回。其中,charToByte方法用于将一个字符转换为对应的字节。
阅读全文