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();
}

代码解析:

  1. 监听端口: 使用 TcpListener 类监听指定端口 (1025),并启动监听。
  2. 接收数据: 使用 AcceptTcpClient() 方法接收来自客户端的连接,并获取数据流。
  3. 解析图片: 从数据流中读取图片数据,并使用 Image.FromStream() 方法解析为图片对象。
  4. 显示图片: 将解析后的图片对象显示在 pictureBox 控件中。
  5. 关闭连接: 关闭数据流和客户端连接。

注意:

  • 确保客户端和服务器在同一网络中,并使用相同的端口号。
  • 图片数据格式应与客户端发送的格式一致。
  • 可以根据实际需求修改代码中的端口号、图片显示控件等参数。

相关资源:

C# TCP 图片接收实现

原文地址: https://www.cveoy.top/t/topic/qfRC 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录