Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java,xSocket-框架分为两部分-如何读取?_Java_Xsocket - Fatal编程技术网

Java,xSocket-框架分为两部分-如何读取?

Java,xSocket-框架分为两部分-如何读取?,java,xsocket,Java,Xsocket,我有一个设备,在一个连接中发送带有字节的数据帧。首先它发送Hello帧,我通过ACK对其进行响应,然后它发送非固定长度的数据帧。这是一个问题。该数据帧有时分为两部分 例如: 00 00 04 cf 08 09(以及接下来的234字节) (994字节,最后:)09 00 00 ab 9b 第一部分的前4个字节是“前导”,接下来的4个字节是数据字段长度,“数据数量”的下一个字节是数据字节。第二部分也是数据字节,后面是“数据数”的一个字节和CRC-16的4个字节 这是一个例子。另一个例子也分为两部分,

我有一个设备,在一个连接中发送带有字节的数据帧。首先它发送Hello帧,我通过ACK对其进行响应,然后它发送非固定长度的数据帧。这是一个问题。该数据帧有时分为两部分

例如:

00 00 04 cf 08 09(以及接下来的234字节)

(994字节,最后:)09 00 00 ab 9b

第一部分的前4个字节是“前导”,接下来的4个字节是数据字段长度,“数据数量”的下一个字节是数据字节。第二部分也是数据字节,后面是“数据数”的一个字节和CRC-16的4个字节

这是一个例子。另一个例子也分为两部分,但在另一个地方:

00 00 04 cf 08 09(以及接下来的1230字节)

00 ab 9b

这是同一帧,但在另一个地方分开


我的问题是:如何读取完整的数据帧?哪种方法最好?我使用的是

可能首先缓冲所有数据,直到您看到所有数据,就像xsocket看起来有点过时一样。。。也许你可以试试Netty,但我不知道什么时候我会收到所有的数据,或者我是否已经收到了所有的数据。试试阻止接收,或者类似轮询的方式