java中如何将byte[]里面的数据转换成十六进制?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中如何将byte[]里面的数据转换成十六进制?相关的知识,希望对你有一定的参考价值。

参考技术A

方法如下:

/* *

* 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();  

 

此方法能将byte[]转化成16进制字符串,

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

以上是关于java中如何将byte[]里面的数据转换成十六进制?的主要内容,如果未能解决你的问题,请参考以下文章

java中如何声明一个十六进制的字符串,或者说,怎么发送一个十六进制数据?

java如何将十六进制0xFF5100A5转换为无符号int值,貌似java不支持无符号数据?

TCP通信实现对接硬件发送与接收十六进制数据 & int与byte的转换原理 & java中正负数的表示

十六进制转汉字

如何将字符串加载到 BYTE* 数组(C++)的元素中 [重复]

Java中十六进制转换 Integer.toHexString()