C# TCP socket發送大數據包時,接收端和發送端數據不一致 服務端接收Receive不完全
服務器端:
TcpListener listener = new TcpListener(IP, 1234); listener.Start();
while (true)
{
TcpClient client = listener.AcceptTcpClient();//接受一個Client
byte[] buffer = new byte[client.ReceiveBufferSize];
NetworkStream stream = client.GetStream();//獲取網絡流
stream.Read(buffer, 0, buffer.Length);//讀取網絡流中的數據
stream.Close();//關閉流
client.Close();//關閉Client
receiveString = Encoding.Default.GetString(buffer).Trim('\0');//轉換成字符串
Console.WriteLine(receiveString);
}
listener.Stop();
客戶端:
TcpClient client = new TcpClient(ip, 1234); NetworkStream sendStream = client.GetStream(); Byte[] sendBytes = Encoding.Default.GetBytes(msg); sendStream.Write(sendBytes, 0, sendBytes.Length); sendStream.Flush();
sendStream.Close();//關閉網絡流
client.Close();//關閉客戶端
