zoukankan      html  css  js  c++  java
  • java中如何将byte[]里面的数据转换成16进制字符串

    原文链接: http://zhidao.baidu.com/link?url=RmLDjr4PtP_oUE5J2pKNZSvlHt1K7HcCh4-03Y7VkXYhJ0kawg01CtKHZc2uBVxQsHgzl8pp60WBYULP6K15K_

    以下3个方法能将byte[]转化成16进制字符串,可以任选一个

    /* *
    * Convert byte[] to hex string.这里我们可以将byte转换成int,然后利用Integer.toHexString(int)
    *来转换成16进制字符串。
    * @param src byte[] data
    * @return hex string
    */

    public static String bytesToHexString(byte[] src){
    StringBuilder stringBuilder = new StringBuilder("");
    if (src == null || src.length <= 0) {
    return null;
    }
    for (int i = 0; i < src.length; i++) {
    int v = src[i] & 0xFF;
    String hv = Integer.toHexString(v);
    if (hv.length() < 2) {
    stringBuilder.append(0);
    }
    stringBuilder.append(hv);
    }
    return stringBuilder.toString();
    }

    public static String bytes2HexString(byte[] b) {
      String ret = "";
      for (int i = 0; i < b.length; i++) {
        String hex = Integer.toHexString(b[i] & 0xFF);
        if (hex.length() == 1) {
          hex = "0" + hex;
        }
        ret += hex;
      }
      return ret;
    }


    public static String toHex(byte[] buffer) {
      StringBuffer sb = new StringBuffer(buffer.length * 2);
      for (int i = 0; i < buffer.length; i++) {
        sb.append(Character.forDigit((buffer[i] & 240) >> 4, 16));
        sb.append(Character.forDigit(buffer[i] & 15, 16));
      }
      return sb.toString();
    }
  • 相关阅读:
    软件构造实训经验总结
    Python Numpy data-type dtype 自定义数据类型
    numpy练习100题--错题本
    pytorch tensor 调换矩阵行的顺序
    Pytorch-Tensor基本操作
    torch.randonperm()
    jupyter找不到conda的虚拟环境
    Windows下tar.gz tar.bz2的安装方法
    ubuntu常用的命令行操作命令
    神经网络权重初始化
  • 原文地址:https://www.cnblogs.com/huhu0013/p/4756917.html
Copyright © 2011-2022 走看看