数据帧读取的问题

[复制链接]
2890|4
 楼主| 77muke 发表于 2010-9-24 15:53 | 显示全部楼层 |阅读模式
我存储了很多的数据帧,每帧数据都有标记该帧数据开始写的字段、数据帧类型、长度、时间戳。当要求读取时,设定了固定长度的缓冲区,但是帧长度是不固定的,那要怎样区分的读取每帧数据,校验每帧数据的字段、类型、长度等信息呢?
chunyang 发表于 2010-9-24 16:09 | 显示全部楼层
帧长度可用特定位置的长度信息或结束符表示,先根据起始符判定帧的起始位置,然后按协议约定的偏移量读取长度码即可获知帧长度,如果是用结束符表示的,则依次检验数据,直至获取结束符,中间的地址偏移量即为帧长。楼主的疑惑关键在于没有充分理解协议,理解了协议一切迎刃而解。
 楼主| 77muke 发表于 2010-9-24 21:22 | 显示全部楼层
呵呵,谢谢楼上的指导。
还有疑惑,就是在固定读取到的字节中,怎样处理出来每一帧,能细说下具体的方法吗?
谢谢。
chunyang 发表于 2010-9-24 22:38 | 显示全部楼层
这可没法说,协议的功能是由你定的,不同功能处理方法 会非常不同。
ejack 发表于 2010-9-25 06:47 | 显示全部楼层
每帧数据都有标记该帧数据开始写的字段、数据帧类型、长度、时间戳


按照LZ所说,已有帧开始标识和帧长度。只要制定协议时容易取出长度就易于处理
您需要登录后才可以回帖 登录 | 注册

本版积分规则

34

主题

78

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部