zoukankan      html  css  js  c++  java
  • 通过UDP的组播方式收发数据

    客户端代码

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Net;
    using System.Net.Sockets;
    using System.Text;
    
    namespace UDPTest
    {
        public partial class Form1 : Form
        {
            private UdpClient udpSend;
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                udpSend = new UdpClient();
                udpSend.EnableBroadcast = true;//是否可以发送和接收广播
                IPEndPoint iep = new IPEndPoint(IPAddress.Parse("224.100.0.10"), 8001);
                byte[] data = Encoding.UTF8.GetBytes(richTextBox1.Text);
                udpSend.Send(data, data.Length, iep);
                richTextBox1.Clear();
            }
        }
    }
    
    

    服务端代码

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    using System.Net;
    using System.Net.Sockets;
    
    namespace UDPTest2
    {
        public partial class Form1 : Form
        {
            
            UdpClient udpReceive;
    
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
    
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                byte[] data = null;
                udpReceive = new UdpClient(8001);
                udpReceive.JoinMulticastGroup(IPAddress.Parse("224.100.0.10"), 50);//添加到多路广播组,50为路由器跳数
                IPEndPoint iep = new IPEndPoint(IPAddress.Any, 0);
                while (true)
                {
                    data = udpReceive.Receive(ref iep);
                    string str = Encoding.UTF8.GetString(data, 0, data.Length);
                    MessageBox.Show(iep.ToString() + ":" + str);
                }
            }
        }
    }
    
  • 相关阅读:
    Android tcpdump 抓包
    Android CursorAdapter 查询联系人过滤
    Android 项目打包成apk文件
    解决Centos 6.3 中 gedit中文乱码问题
    在Linux(centos)系统上用手机调试android程序(eclipse)
    系统定时关机命令–shutdown
    使用gdb Server调试嵌入式程序
    Vim 错误排查方法
    通过netstat命令查看进程与端口的对应关系
    dexpler的使用方法
  • 原文地址:https://www.cnblogs.com/liulun/p/1686518.html
Copyright © 2011-2022 走看看