C# UDP接收数据
时间: 2024-08-14 09:01:22 浏览: 93
在C#中,UDP (User Datagram Protocol) 是一种无连接的数据报协议,用于在互联网上进行快速、不可靠的数据传输。如果你需要在C#中接收UDP数据,你需要做以下几个步骤:
- 创建
UdpClient
实例:首先,通过System.Net.Sockets
命名空间下的UdpClient
类创建一个新的实例。
using System.Net;
using System.Net.Sockets;
UdpClient udpClient = new UdpClient();
- 设置端口:指定你要监听的端口号,这个端口将是其他设备发送数据到你的服务器的通道。
int port = 8080; // 或者你喜欢的任意端口
udpClient.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
udpClient.Client.Bind(new IPEndPoint(IPAddress.Any, port));
- 接收数据:使用
ReceiveAsync
方法异步地等待数据包的到来。它会返回一个包含接收到的消息和发送方信息的IPEndPoint
和byte[]
数组。
async Task ListenForMessages()
{
while (true)
{
var receivedData = await udpClient.ReceiveAsync();
byte[] data = receivedData.Buffer;
string message = Encoding.UTF8.GetString(data); // 假设数据是以UTF8编码的字符串
Console.WriteLine($"Received message from {receivedData.RemoteEndPoint}: {message}");
}
}
- 结束接收:在不需要接收数据时,记得关闭
UdpClient
。
// 在适当的时候停止接收
udpClient.Close();
相关推荐


















