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

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

方法如下:

/* *

* 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 = 0i <src.lengthi++) {

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语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

一个16进制的byte数组转化成utf-8格式的字符串的方法有以下几种:

使用C语言,可以定义一个函数,将每个byte分成高4位和低4位,然后分别转换成对应的16进制字符,再拼接起来。

使用Java语言,可以使用Integer.toHexString()方法,将每个byte转换成两个16进制字符,再拼接起来。

使用Python语言,可以使用binascii.hexlify()方法,将byte数组转换成16进制字符串。

: 十六进制元素数组与字符串相互转换(C语言)_c语言16进制数组转换字符串_wangqingchuan92的博客-CSDN博客 : java中byte数组与十六进制字符串相互转换 - 腾讯云开发者社区-腾讯云 : python - How to convert a byte array to a hex string in Python? - Stack Overflow

1.

你没搞明白一个问题,“

16进制

”是指采用“16进制”来表示数据,并不是说内存中的数据也会变成16进制。内存中的数据始终是1、0组成的二进制。

比如:

10进制

的10。内存中的值是1010,而采用“16进制”则表示为0xA,内存中的数据还是1010。

2.

写图片文件是不能采用“写字符串”的方式的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11502352.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存