码迷,mamicode.com
首页 > 编程语言 > 详细

java中byte[] 和16进制字符串互转

时间:2018-04-04 12:52:58      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:pre   parse   builder   article   integer   for   public   tmp   case   


//将byte[]转换为16进制字符串

public static String byte2hex(byte[] b) {
    StringBuilder hs = new StringBuilder();
String stmp;
for (int n = 0; b != null && n < b.length; n++) {
stmp = Integer.toHexString(b[n] & 0XFF);
if (stmp.length() == 1)
hs.append(‘0‘);
hs.append(stmp);
}
return hs.toString().toUpperCase();
}



//将16进制字符串转换为byte[]
public static byte[] toBytes(String str) {
if(str == null || str.trim().equals("")) {
return new byte[0];
}

byte[] bytes = new byte[str.length() / 2];
for(int i = 0; i < str.length() / 2; i++) {
String subStr = str.substring(i * 2, i * 2 + 2);
bytes[i] = (byte) Integer.parseInt(subStr, 16);
}

return bytes;
}



参考:https://blog.csdn.net/worm0527/article/details/69939307

java中byte[] 和16进制字符串互转

标签:pre   parse   builder   article   integer   for   public   tmp   case   

原文地址:https://www.cnblogs.com/SEC-fsq/p/8715541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!