2 tdarray TDArray 于 2017.01.16 15:49 提问

【新手】nodejs解析udp数据

图片说明

如图,想从接收到的数据里的频率信息和幅度信息读出来。但是这个命令头里的数据点数怎么读出来呢?还有后面的数据?

后端是这样跟我说的,用sizeof读头大小,然后定义个XX,XX.datanum把数据点数知道了,然后内存复制频率信息,再来读取。。。。一脸蒙逼。。。

之前做过读tcp数据的,所以用什么样的方法接收我知道,但是怎么解析呢,之前没有定义的这个命令头,而且数据字节标了的,仅用readInt方法就把数据读出来了。

这个应该怎么弄呢?求大神帮助。

2个回答

devmiao
devmiao   Ds   Rxr 2017.01.16 23:54
TDArray
TDArray   2017.01.17 17:20

楼上的方法是对的,不过之前用tcp方式的时候我已经知道了。
我让后台把命令头读出是8个字节的。init 4字节,bool也是4字节。
然后就简单了,readFloat直接读数据(以我的为例,这里面读出来是800),.length读出来长度为6408,
这就好办了,排除前面的8字节,后面800乘以4+800乘以4=6400刚好分别对应频率和幅度信息,
一个readInt32LE循环读出数据就行了。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!