Java 中二进制转换成十六进制的两种实现方法
每个字节转成16进制,方法1
/**
* 每个字节转成16进制,方法1
*
* @param result
*/
private static String toHex(byte[] result) {
StringBuffer sb = new StringBuffer(result.length * 2);
for (int i = 0; i < result.length; i++) {
sb.append(Character.forDigit((result[i] & 240) >> 4, 16));
sb.append(Character.forDigit(result[i] & 15, 16));
}
return sb.toString();
}
每个字节转成16进制,方法2
/**
* 每个字节转成16进制,方法2
*
* @param result
* @return
*/
private static String toHex2(byte[] result) {
StringBuffer sb = new StringBuffer(result.length * 2);
for (int i = 0; i < result.length; i++) {
int hight = ((result[i] >> 4) & 0x0f);
int low = result[i] & 0x0f;
sb.append(hight > 9 ? (char) ((hight - 10) + 'a')
: (char) (hight + '0'));
sb.append(low > 9 ? (char) ((low - 10) + 'a') : (char) (low + '0'));
}
return sb.toString();
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎点击右下角反馈进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。