C# TCP 图片接收实现
C# TCP 图片接收实现
该代码片段展示了使用 C# 实现 TCP 协议接收图片的功能。
private void ReceiveImages()
{
continueReceiving = true;
TcpListener listener = new TcpListener(IPAddress.Parse(GetLocalIPAddress()), 1025);
listener.Start();
while (continueReceiving)
{
try
{
TcpClient client = listener.AcceptTcpClient();
NetworkStream stream = client.GetStream();
byte[] imageBytes = new byte[client.ReceiveBufferSize];
int bytesRead = stream.Read(imageBytes, 0, imageBytes.Length);
MemoryStream ms = new MemoryStream(imageBytes, 0, bytesRead);
Image receivedImage = Image.FromStream(ms);
pictureBox.Image = receivedImage;
stream.Close();
client.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
listener.Stop();
}
代码解析:
- 监听端口: 使用
TcpListener类监听指定端口 (1025),并启动监听。 - 接收数据: 使用
AcceptTcpClient()方法接收来自客户端的连接,并获取数据流。 - 解析图片: 从数据流中读取图片数据,并使用
Image.FromStream()方法解析为图片对象。 - 显示图片: 将解析后的图片对象显示在
pictureBox控件中。 - 关闭连接: 关闭数据流和客户端连接。
注意:
- 确保客户端和服务器在同一网络中,并使用相同的端口号。
- 图片数据格式应与客户端发送的格式一致。
- 可以根据实际需求修改代码中的端口号、图片显示控件等参数。
相关资源:
原文地址: https://www.cveoy.top/t/topic/qfRC 著作权归作者所有。请勿转载和采集!