对于标记分隔类型,每个数据值前都有一个作为元素属性指定的标记。
标记数据分隔符或特定的标记的长度参数用于确定标记在哪里结束和数据在哪里开始。每个分隔类型使用不同的方法以确定数据的结束。
标记分隔是灵活的格式。元素不必以特定的顺序出现。它不要都出现,可不在消息中的任何点上。
标记数据分隔符和标记的长度由所有标记的分隔类型使用。但同时只能设置这些参数中的一个参数。
tag1:data1其中标记数据分隔符是 :
tag1data1其中标记长度是 4
标记定界分隔是完全灵活的格式。元素不是特定的长度。元素使用预定义的定界符分隔。
尽管标记固定长度分隔是灵活的格式,但数据必须是特定的长度。这意味着不需要定界符以确定元素的结束。
此方法在数据之前有一个标记和长度字段。长度字段向解析器表明它后面跟着的数据的长度。
此长度字段的长度本身在已编码长度的长度参数中定义。在它中要添加额外的长度(例如,字段本身的长度)在已编码长度中的额外字符参数中设置。
这些示例显示了如何应用这些参数中设置的值:
如果标记的长度是 4,编码长度的长度是 3,额外字符是 3,则在此位流中,TagA 后跟 3 字符长的长度字段。这表明以下数据(dataAAA)是 7 个字符长。然后,考虑下一个字段 tagB,等等。
如果标记的长度是 4,编码长度的长度是 3,额外字符是 3,则在此位流中,TagA 后跟 3 字符长的长度字段。这表明下面的数据加上额外的字符是 12 个字符长:长度字段的长度(3)+ 数据的长度(9)= 12。因此实际数据的长度仅是 12-3 = 9。然后考虑下一个字段 tagB,等等。在每种情况下,位流中给定的长度是大于数据的实际长度的 3。