C#中使用UDP通信实例

 更新时间:2014年08月15日 11:55:55   投稿:shichen2014  
这篇文章主要介绍了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();//关闭连接 
  } 
}

程序最终运行效果如下:

相关文章

  • C#中获取各种文件名的实现方式

    C#中获取各种文件名的实现方式

    这篇文章主要介绍了C#中获取各种文件名的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • C#如何通过probing指定dll寻找文件夹详解

    C#如何通过probing指定dll寻找文件夹详解

    这篇文章主要给大家介绍了关于C#如何通过probing指定dll寻找文件夹的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • 基于C#制作考试答题系统

    基于C#制作考试答题系统

    这篇文章主要为大家详细介绍了如何利用C#制作带窗体的考试答题系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • C#深度优先遍历实现全排列

    C#深度优先遍历实现全排列

    这篇文章主要介绍了C#深度优先遍历实现全排列,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • C# JavaScriptSerializer序列化时的时间处理详解

    C# JavaScriptSerializer序列化时的时间处理详解

    这篇文章主要为大家详细介绍了C# JavaScriptSerializer序列化时的时间处理详解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • C#纹理画刷TextureBrush用法实例

    C#纹理画刷TextureBrush用法实例

    这篇文章主要介绍了C#纹理画刷TextureBrush用法,实例分析了纹理画刷TextureBrush的具体使用技巧,需要的朋友可以参考下
    2015-06-06
  • C#中委托和事件在观察者模式中的应用实例

    C#中委托和事件在观察者模式中的应用实例

    这篇文章主要介绍了C#中委托和事件在观察者模式中的应用,需要的朋友可以参考下
    2014-08-08
  • 如何利用现代化C#语法简化代码

    如何利用现代化C#语法简化代码

    这篇文章主要给大家介绍了关于如何利用现代化C#语法简化代码的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • C#生成随机验证码代码分享

    C#生成随机验证码代码分享

    这篇文章主要分享了C#生成随机验证码代码,另外附上使用示例,非常的简单实用,有需要的朋友可以参考下
    2014-10-10
  • C#中使用@声明变量示例(逐字标识符)

    C#中使用@声明变量示例(逐字标识符)

    这篇文章主要介绍了C#中使用@声明变量示例(逐字标识符)在C#中,@符号不仅可以加在字符串常量之前,使字符串不作转义之用,还可以加在变量名之前,使变量名与关键字不冲突,这种用法称为“逐字标识符”,需要的朋友可以参考下
    2015-06-06

最新评论