Java将字节数组转换为十六进制字节数组[重复]

Posted

技术标签:

【中文标题】Java将字节数组转换为十六进制字节数组[重复]【英文标题】:Java convert byte array to hex byte array [duplicate] 【发布时间】:2013-04-07 09:53:33 【问题描述】:

我有一个字节数组,我想将其值转换为十六进制。

字节数组 = [48, 48, 28, ...]

--->

十六进制字节数组 = [30, 30, 1C, ...]

【问题讨论】:

这是一个解决方案:***.com/questions/9655181/… 只是不返回数组的字符串,而是返回转换后的数组本身 没有“十六进制字节数组”之类的东西。十六进制是您查看、打印、报告的方式。不是一个真正的问题。 为什么这个标签是android 【参考方案1】:

这应该可行。如果byte 没有被隐式转换,也许你必须将其转换为int

String[] hexArray = new String[byteArray.length];
for(int index = 0; index < byteArray.length; index++) 
    hexArray[index] = Integer.toHexString(byteArray[index]);
    // maybe you have to convert your byte to int before this can be done
    // (cannot check reight now)

【讨论】:

hexadecial 只是表示。一个字节数组的值总是在 0 到 255 之间,并且不会显示为 00 到 FF,除非您将其转换为字符串表示形式,例如使用 Integer.toHexString() 方法【参考方案2】:

检查Integer.toHexString 方法。 iT 会将 int 转换为十六进制字符串。所以遍历你的数组并转换每个数字。

【讨论】:

以上是关于Java将字节数组转换为十六进制字节数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章

字节数组到十六进制字符数组的转换[重复]

如何将Mac地址转换为十六进制并将其传递给java中的字节数组

将奇数长度的java字符串转换为十六进制字节数组

如何将字符串转换为十六进制字节数组? [复制]

十六进制字符串到字节数组 C# [重复]

从字节数组转换为字符串十六进制c# [重复]