如何处理java中的字节序列?

时间:2013-11-11 16:49:55

标签: java string char bytearray bytebuffer

我有字节流,当我得到特定的Header时,我需要将这些字节形成为一个帧。 例如:

Header:    ABC  
Source:    DFDFDFDF'ABC'IEJENFAREABCOEKRERIERE

如果检测到ABC,则字符串中的剩余字节'IE'和字符串中的'JEN'以及字符串中的'FARE'和ABC中的'OE'被检测到,因此{{1}}在一个字符串...同样我的字节流必须处理。

有没有有效的方法来处理它?

1 个答案:

答案 0 :(得分:1)

如果您有多个标头,我建议您使用Finite State Machines。但是,如果只有一个,简单的模式匹配就足够了。

您所要做的就是从先前创建的帧开始存储字符。每当您阅读角色时,请更新您的状态。如果找到标题的末尾,那么你就得到了你的框架。如果没有,您可以将角色附加到不完整的框架。