我是java新手。我想将十进制值的字节数组转换为十六进制字符串。 我的输入字节数组是[0,0,0,0,0,0,1,-28]。我得到00000000000001e4而不是0000001e4。 PLZ帮我解决了这个问题
public static String ConvetToHex(byte[] decValue)
{
String value = "";
for(int i = 0;i<decValue.length;i++)
{
value = value+ Integer.toString((decValue[i] & 0xff) + 0x100, 16).substring(1);
}
return value;
}
答案 0 :(得分:2)
对我而言看起来是正确的。八个字节应变成16个十六进制字符。你可以使用
return new BigInteger(1, decValue).toString(16);
但它会产生相同的输出。