本文实例讲述了C#实现的UDP收发请求工具类。分享给大家供大家参考,具体如下:

初始化:

ListeningPort = int.Parse(ConfigurationManager.AppSettings["ListeningPort"]);

SendingPort = int.Parse(ConfigurationManager.AppSettings["SendingPort"]);

SendingIp = ConfigurationManager.AppSettings["SendingIp"];

复制代码

监听:

public static void Listen()

{

Task.Run(() =>

{

var done = false;

var listener = new UdpClient(ListeningPort);

var groupEP = new IPEndPoint(IPAddress.Any, ListeningPort);

string received_data;

byte[] receive_byte_array;

try

{

_log.Error("############Service started###########");

while (true)

{

receive_byte_array = listener.Receive(ref groupEP);

Console.WriteLine("Received a broadcast from {0}", groupEP.ToString());

received_data = Encoding.UTF8.GetString(receive_byte_array, 0, receive_byte_array.Length);

ParseCommand(received_data);

}

}

catch (Exception e)

{

_log.Error(e);

Console.WriteLine(e.ToString());

}

_log.Error("############Service stopped###########");

});

}

复制代码

发送:

public static void SendCommand(string xmlCmd)

{

try

{

var sending_socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

var sending_end_point = new IPEndPoint(IPAddress.Parse(SendingIp), SendingPort);

var send_buffer = Encoding.UTF8.GetBytes(xmlCmd);

sending_socket.SendTo(send_buffer, sending_end_point);

_log.Info("[COMMAND SENT] : " + xmlCmd);

}

catch (Exception ex)

{

_log.Error(ex);

}

}

复制代码

(编辑:雷林鹏 来源:网络)

C#实现的UDP收发请求工具类实例的更多相关文章

  1. WebUtils-网络请求工具类

    网络请求工具类,大幅代码借鉴aplipay. using System; using System.Collections.Generic; using System.IO; using System ...

  2. Http、Https请求工具类

    最近在做微信开发,使用http调用第三方服务API,有些是需要https协议,通过资料和自己编码,写了个支持http和https的工具类,经验证可用,现贴出来保留,也供需要的人使用(有不足的地方,也请 ...

  3. 微信https请求工具类

    工作中用到的微信https请求工具类. package com.gxgrh.wechat.tools; import com.gxgrh.wechat.wechatapi.service.System ...

  4. HTTP请求工具类

    HTTP请求工具类,适用于微信服务器请求,可以自测 代码; /// <summary> /// HTTP请求工具类 /// </summary> public class Ht ...

  5. 实现一个简单的http请求工具类

    OC自带的http请求用起来不直观,asihttprequest库又太大了,依赖也多,下面实现一个简单的http请求工具类 四个文件源码大致如下,还有优化空间 MYHttpRequest.h(类定义, ...

  6. 远程Get,Post请求工具类

    1.远程请求工具类   import java.io.*; import java.net.URL; import java.net.URLConnection; import java.util.L ...

  7. ajax请求工具类

    ajax的get和post请求工具类: /** * 公共方法类 *  * 使用  变量名=function()定义函数时,如果在变量名前加var,则这个变量变成局部变量 */var Common = ...

  8. 【原创】标准HTTP请求工具类

    以下是个人在项目开发过程中,总结的Http请求工具类,主要包括四种: 1.处理http POST请求[XML格式.无解压]: 2.处理http GET请求[XML格式.无解压]: 3.处理http P ...

  9. 我的Android进阶之旅------>Android关于HttpsURLConnection一个忽略Https证书是否正确的Https请求工具类

    下面是一个Android HttpsURLConnection忽略Https证书是否正确的Https请求工具类,不需要验证服务器端证书是否正确,也不需要验证服务器证书中的域名是否有效. (PS:建议下 ...

随机推荐

  1. POJ 分类

    初期: 一.基本算法:      (1)枚举. (poj1753,poj2965)      (2)贪心(poj1328,poj2109,poj2586)      (3)递归和分治法.      ( ...

  2. HexDump.java解析,android 16进制转换

    HexDump.java解析android 16进制转换 package com.android.internal.util; public class HexDump { private final ...

  3. EasyUI+bootsrtap混合前端框架

    EasyUI+bootsrtap混合前端框架 http://www.jeasyui.com/download/index.php用户没有登录前浏览的页面用bootsrtap框架用户登录进去后的商家管理 ...

  4. SDOI2019Round1游记

    SDOI2019Round1游记 Day 0 报道日,早晨五点睡的觉,一觉醒来已经一点半了,收拾收拾东西报道去了.因为没吃饭,坐着出租车晕车了,我让师傅把我放到历下大润发,我去金拱门吃了点饭才去的23 ...

  5. Python入门之面向对象的多态

    本章目录: 一.多态 二.多态性 三.鸭子类型 ============================== 一.多态 多态指的是一类事物有多种形态. 动物有多种形态:人,狗,猪. import ab ...

  6. bzoj1648 / P2853 [USACO06DEC]牛的野餐Cow Picnic

    P2853 [USACO06DEC]牛的野餐Cow Picnic 你愿意的话,可以写dj. 然鹅,对一个缺时间的退役选手来说,暴力模拟是一个不错的选择. 让每个奶牛都把图走一遍,显然那些被每个奶牛都走 ...

  7. Java实现Sybase数据库连接

    Java实现Sybase数据库连接 需要的jar包:jconn4.jar: Java代码: /** * @Title: getConnSybase * @Description: * @param * ...

  8. linux django 知识点 安装mysql数据库 和 pycharm

     django 命令及相关知识点 1. 启动 pycharm 命令:sh pycharm.sh 2. 创建 django 项目 : django-admin.py startproject Hello ...

  9. inotify工具安装配置

    一.安装 1)  从内核和目录里面查看是否支持inotify [root@nfs01 ~]# uname -r 2.6.32-573.el6.x86_64 [root@nfs01 ~]# ls -l ...

  10. 微信小程序——2、配置json文件

    配置文件详解 主配置文件app.json 主配置文件位于主目录中,用于进行全局配置.包括页面文件的路径.窗口表现.设置网络超时时间.设置多tab等 下面通过微信最初自带小程序来学习 { "p ...