使用十六进制数初始化无符号字节数组 [英] Initialize unsigned byte array using hex number
本文介绍了使用十六进制数初始化无符号字节数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道 Java
中缺少无符号字节那么如何使用 0到255(十六进制)中的整数初始化字节数组)?
I know that unsigned byte is missing in Java Then how can I initialize the byte array using integer from 0 to 255 (in hex)?
final byte assoc_resp_msg_int[] = new byte[] {
0xe3, 0x00, //APDU CHOICE Type(AareApdu)
0x00, 0x2c, //CHOICE.length = 44
0x00, 0x00, //result=accept
0x50, 0x79, //data-proto-id = 20601
0x00, 0x26, //data-proto-info length = 38
0x80, 0x00, 0x00, 0x00, //protocolVersion
0x80, 0x00, //encoding rules = MDER
0x80, 0x00, 0x00, 0x00, //nomenclatureVersion
0x00, 0x00, 0x00, 0x00, //functionalUnits, normal Association
0x80, 0x00, 0x00, 0x00, //systemType = sys-type-manager
0x00, 0x08, //system-id length = 8 and value (manufacturer- and device- specific)
0x88, 0x77, 0x66, 0x55, 0x44, 0x33, 0x22, 0x11,
0x00, 0x00, //Manager's response to config-id is always 0
0x00, 0x00, //Manager's response to data-req-mode-flags is always 0
0x00, 0x00, //data-req-init-agent-count and data-req-init-manager-count are always 0
0x00, 0x00, 0x00, 0x00, //optionList.count = 0 | optionList.length = 0
};
推荐答案
你必须存储 0x80
字节如下:
final byte assoc_resp_msg_int[] = new byte[] {
(byte)0xe3, 0x00, //APDU CHOICE Type(AareApdu)
0x00, 0x2c, //CHOICE.length = 44
0x00, 0x00, //result=accept
0x50, 0x79, //data-proto-id = 20601
0x00, 0x26,
(byte)0x80,
...
}
System.out.println(assoc_resp_msg_int[10]&0xFF);
//128
这篇关于使用十六进制数初始化无符号字节数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文