转移到十进制我与十六进制小数的值的字节数组和我转换该数组为十进制值,使用以下代码转换签名的字节数组的内容在Java
byte[] content = message.getFieldValue("_Decoder Message").data();
int[] decContent = new int[ content.length ];
int i = 0;
for (byte b : content)
decContent[ i++ ] = b & 0xff;
现在阵列看起来像 decContent = [01 00 05 00 00 00];
该数组的第一个2个索引被转换并保存为整型值如下
int traceIdlow = decContent[ 0 ] & 0xFF;
int traceIdhigh = decContent[ 1 ] & 0xFF;
int TraceId = traceIdlow | (traceIdhigh << 8);
最后4个索引需要被转换为int,以及,但我感到困惑的换档是否应该8或16。
我如何转换的最后4项指标,以便根据上面的例子中值为
00 00 00 05 = 5 in decimal.
任何想法为int值?
感谢
小(但很重要)的一点:你不能转换为“十进制”,你从字节转换数值为整数尺寸。那么你就是将一些比特封装的值分解成单独的整数。 “十进制”从不进入它。 –