在Java中将十六进制字符串转换为字节数组

要将十六进制字符串转换为字节数组,您需要首先获取给定字符串的长度,并在创建新的字节数组时将其包括在内。

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

以上是 在Java中将十六进制字符串转换为字节数组 的全部内容, 来源链接: utcz.com/z/351469.html

回到顶部