在套接字的同一缓冲区中发送两个字节数组

本文关键字:两个 字节 数组 字节数 套接字 缓冲区 | 更新日期: 2023-09-27 18:32:21

我正在发送同一缓冲区中的两个字节数组以发送到套接字我不知道收到后如何将它们分开

clientSocket.SendBufferSize = blindedVote.getBytes().Length + sBEVote.Length;
byte[] outStream = new byte[clientSocket.SendBufferSize];
blindedVote.getBytes().CopyTo(outStream, 0);
sBEVote.CopyTo(outStream, blindedVote.getBytes().Length);
serverStream.Write(outStream, 0, outStream.Length);
// int size = clientSocket.SendBufferSize;
serverStream.Flush();

收到后,如何分隔每个字节数组?

谢谢

在套接字的同一缓冲区中发送两个字节数组

这通常取决于您的协议。

您可以尝试创建一个特定的数据结构并将其完整发送 - 每个数组的长度,实际数据,一些CRC(以一种或另一种方式检查来自套接字的数据总是好的),其他任何东西。

另一种选择是发送数组的长度,第一个数组,等待接收器的一些确认,重复第二个数组等。

如果不了解接收器端的数据,则无法做到这一点。