将 16 进制字符串转换成字节数组
要将 16 进制字符串转换成字节数组,你需要先获取给定字符串的长度,并在创建一个新的字节数组时包含它。
byte[] val = new byte[str.length() / 2];
现在,创建一个直到字节数组的长度的 for 循环。
for (int i = 0; i < val.length; i++) { int index = i * 2; int j = Integer.parseInt(str.substring(index, index + 2), 16); val[i] = (byte) j; }
让我们看一个完整的示例。
示例
public class Demo { public static void main(String args[]) { String str = "p"; byte[] val = new byte[str.length() / 2]; for (int i = 0; i < val.length; i++) { int index = i * 2; int j = Integer.parseInt(str.substring(index, index + 2), 16); val[i] = (byte) j; } System.out.println(val); } }
输出
[B@2a139a55
广告