【发布时间】:2020-04-22 15:18:32
【问题描述】:
我有带有标头的二进制数据包(\FF 字节的未确定长度序列)并遵循我需要解析的结构化主体。示例数据包:
<<255,255,255,255,255,6,8,0,0,1>>,
<<255,255,255,255,255,255,255,255,255,10,15,0,0,1>>
解析它的最有效方法是什么?我找到了以下解决方案:
1) 将数据包转换为列表
2) 跳过标题有以下乐趣:
skip_elem([E | Rest], Condition) ->
case Condition(E) of
true -> [E | Rest];
false -> skip_elem(Rest, Condition)
end;
skip_elem([], _Cond) -> [].
3) 将列表转换为二进制并使用二进制匹配特征解析其主体
但是方法看起来复杂且无效,有没有更有效的解决方案?
【问题讨论】:
标签: erlang