C#教程之C#中使用UDP通信实例

时间:2022-07-23
本文章向大家介绍C#教程之C#中使用UDP通信实例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

网络通信协议中的UDP通信是无连接通信,客户端在发送数据前无需与服务器端建立连接,即使服务器端不在线也可以发送,但是不能保证服务器端可以收到数据。本文实例即为基于C#实现的UDP通信。具体功能代码如下:

服务器端代码如下

static void Main(string[] args)
{
  UdpClient client = null;
  string receiveString = null;
  byte[] receiveData = null;
  //实例化一个远程端点,IP和端口可以随意指定,等调用client.Receive(ref remotePoint)时会将该端点改成真正发送端端点
  IPEndPoint remotePoint = new IPEndPoint(IPAddress.Any, 0);
 
  while (true)
  {
 client = new UdpClient(11000);
 receiveData = client.Receive(ref remotePoint);//接收数据
 receiveString = Encoding.Default.GetString(receiveData);
 Console.WriteLine(receiveString);
 client.Close();//关闭连接
  }
}
客户端代码如下:

static void Main(string[] args)
{
  string sendString = null;//要发送的字符串
  byte[] sendData = null;//要发送的字节数组
  UdpClient client = null;
 
  IPAddress remoteIP = IPAddress.Parse("127.0.0.1");
  int remotePort = 11000;
  IPEndPoint remotePoint = new IPEndPoint(remoteIP, remotePort);//实例化一个远程端点
 
  while (true)
  {
 sendString = Console.ReadLine();
 sendData = Encoding.Default.GetBytes(sendString);
 
 client = new UdpClient();
 client.Send(sendData, sendData.Length, remotePoint);//将数据发送到远程端点
 client.Close();//关闭连接
  }