将标头添加到服务器/客户端连接

本文关键字:客户端 连接 服务器 添加 | 更新日期: 2023-09-27 18:37:12

我需要翻译此代码以添加一个大的字节序 2 字节标头。它现在可以在没有标题的情况下工作,但我对如何添加它有点迷茫。

TcpClient client = new TcpClient(ipNum, portNum);
NetworkStream nw = client.GetStream();
byte[] send = Encoding.UTF8.GetBytes(userInput);
Console.WriteLine("Sending : " + userInput);
nw.Write(send, 0, send.Length);
byte[] readBytes = new byte[client.ReceiveBufferSize];
int bytesRead = nw.Read(readBytes, 0, client.ReceiveBufferSize);
Console.WriteLine("Received : " + Encoding.UTF8.GetString(readBytes 0, readBytes);

将标头添加到服务器/客户端连接

UTF8Encoding支持添加该标头。手动实例化该类,并使用允许您指定需要 BOM 标头的构造函数。

请注意,您的读取代码已损坏,因为您可能从远程端收到少于一条"消息"。您可能一次只收到一个字节。 client.ReceiveBufferSize也没有意义。只需选择静态缓冲区大小,例如 4096