好吧,经过大量挖掘,我发现简单TAG
实际上不仅仅是一个数字,它TAG
本身实际上编码了其中的早午餐信息。我为了找出TLV
包含是否嵌套TLV
,以便我的代码知道何时继续处理以及何时停止,我必须解码TAG
.
所以TAG
包含 8 位,每个位都有特殊含义:
我需要的一点是B5
为了确定 current 是否TLV
是Constructed
……什么时候Constructed
意味着 currentTLV
由多个 组成TLV
,所以对于我的代码,我正在使用这些信息递归地挖掘嵌套的TLV
.
当TLV
不是那 Constructed
是我停止冒泡的情况。
这是我通过解析数据并检查位的递归函数B5
输出TAG
:
11:20:38.428 Parsing: 61394F0BA00000030800001000010079074F05A000000308500E49442D4F6E65205049562042494F5F50107777772E6F626572746875722E636F6D7F66080202800002028000
11:20:38.436 Constructed Data Object
11:20:38.437 Parsing: 4F0BA00000030800001000010079074F05A000000308500E49442D4F6E65205049562042494F5F50107777772E6F626572746875722E636F6D
11:20:38.437 Primitive Data Object
11:20:38.437 tag: 79, len: 11, value: A000000308000010000100
11:20:38.437 Constructed Data Object
11:20:38.437 Parsing: 4F05A000000308
11:20:38.437 Primitive Data Object
11:20:38.437 tag: 79, len: 5, value: A000000308
11:20:38.437 Primitive Data Object
11:20:38.437 tag: 80, len: 14, value: 49442D4F6E65205049562042494F
11:20:38.437 MultiByte tag
11:20:38.437 Primitive Data Object
11:20:38.437 tag: 24400, len: 16, value: 7777772E6F626572746875722E636F6D
11:20:38.438 MultiByte tag
11:20:38.438 Constructed Data Object
11:20:38.438 Parsing: 0202800002028000
11:20:38.438 Primitive Data Object
11:20:38.438 tag: 2, len: 2, value: 8000
11:20:38.438 Primitive Data Object
11:20:38.438 tag: 2, len: 2, value: 8000