C#实现的UDP收发请求工具类实例
本文实例讲述了C#实现的UDP收发请求工具类。分享给大家供大家参考,具体如下:
初始化:
ListeningPort=int.Parse(ConfigurationManager.AppSettings["ListeningPort"]); SendingPort=int.Parse(ConfigurationManager.AppSettings["SendingPort"]); SendingIp=ConfigurationManager.AppSettings["SendingIp"];
监听:
publicstaticvoidListen() { Task.Run(()=> { vardone=false; varlistener=newUdpClient(ListeningPort); vargroupEP=newIPEndPoint(IPAddress.Any,ListeningPort); stringreceived_data; byte[]receive_byte_array; try { _log.Error("############Servicestarted###########"); while(true) { receive_byte_array=listener.Receive(refgroupEP); Console.WriteLine("Receivedabroadcastfrom{0}",groupEP.ToString()); received_data=Encoding.UTF8.GetString(receive_byte_array,0,receive_byte_array.Length); ParseCommand(received_data); } } catch(Exceptione) { _log.Error(e); Console.WriteLine(e.ToString()); } _log.Error("############Servicestopped###########"); }); }
发送:
publicstaticvoidSendCommand(stringxmlCmd) { try { varsending_socket=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp); varsending_end_point=newIPEndPoint(IPAddress.Parse(SendingIp),SendingPort); varsend_buffer=Encoding.UTF8.GetBytes(xmlCmd); sending_socket.SendTo(send_buffer,sending_end_point); _log.Info("[COMMANDSENT]:"+xmlCmd); } catch(Exceptionex) { _log.Error(ex); } }
更多关于C#相关内容感兴趣的读者可查看本站专题:《C#程序设计之线程使用技巧总结》、《C#窗体操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#数组操作技巧总结》及《C#面向对象程序设计入门教程》
希望本文所述对大家C#程序设计有所帮助。