TLV数据解析的函数整理(Java )
如有问题,请拍板砖!!会及时更正!!
废话不多说直接上代码!!!
测试调用:
public class test {
public static void main(String[] args){
//测试数据
String data = "950500000008004F08A0000003330101019F36022935500A50424F432044454249549F3704CC8DEE7A82027C009F34030000009F101307020103A00000010A010000017400116766E99F3303E0E1C0";
TLVTools tlvTools = new TLVTools();
TLV tlv;
tlvTools.unpack(data);
for(int i=0;i<tlvTools.tlvList.size();i++)
{
tlv = tlvTools.tlvList.get(i);
System.out.print(" 标签:["+i+"]"+"\n");
System.out.print(" tag:"+tlv.getTag()+"\n");
System.out.print(" len:"+tlv.getLen()+"\n");
System.out.print("value:"+ tlvTools.bytesToHex(tlv.getValue())+"\n");
}
}
}
TLV数据类:
public class TLV{
int tag;//tag定义成数字是为了方便遍历使用
int len;
byte[] value;
public int getTag() {
return tag;
}
public void setTag(int tag) {
this.tag = tag;
}
public int getLen() {
return len;
}
public void setLen(int len) {
this.len = len;
}