我有字节流,当我得到特定的Header时,我需要将这些字节形成为一个帧。 例如:
Header: ABC
Source: DFDFDFDF'ABC'IEJENFAREABCOEKRERIERE
如果检测到ABC,则字符串中的剩余字节'IE'
和字符串中的'JEN'
以及字符串中的'FARE'
和ABC中的'OE'
被检测到,因此{{1}}在一个字符串...同样我的字节流必须处理。
有没有有效的方法来处理它?
答案 0 :(得分:1)
如果您有多个标头,我建议您使用Finite State Machines。但是,如果只有一个,简单的模式匹配就足够了。
您所要做的就是从先前创建的帧开始存储字符。每当您阅读角色时,请更新您的状态。如果找到标题的末尾,那么你就得到了你的框架。如果没有,您可以将角色附加到不完整的框架。