C#中UDP的简单使用+样例

发送:

cs 复制代码
udpClient.Send(bytes, bytes.Length, "127.0.0.1", 11001);

--发送的数据是byte类型,指定ip和端口

接收:

cs 复制代码
public MainWindow()
{
    InitializeComponent();
    udpClient = new UdpClient(11001); // 监听端口11001
    Task.Run(() => ListenForMessages());
}


private void ListenForMessages()
{
    try
    {
        IPEndPoint remoteEP = new IPEndPoint(IPAddress.Any, 11001);
        while (true)
        {
            byte[] bytes = udpClient.Receive(ref remoteEP);
            string receivedData = Encoding.UTF8.GetString(bytes); // 使用UTF-8解码

            // 使用UI线程
            Dispatcher.Invoke(() =>
            {
                // 更新UI显示接收到的消息
                messagesTextBox.Text += receivedData + Environment.NewLine;
            });
        }
    }
    catch (Exception ex)
    {
        // 处理异常
    }
}

--需要开个线程不停地调用Receive

样例:GitHub - zzp229/UDP-: 使用wpf实现一个基于UDP的额聊天系统,包括发群聊、私信、图片和文件

稍微大点的图片或文件就需要分包才能发送,只实现了发送文字和发送小图片功能

相关推荐
utmhikari6 小时前
【架构艺术】治理后端稳定性的一些实战经验
java·开发语言·后端·架构·系统架构·稳定性·后端开发
csbysj20206 小时前
Swift 条件语句
开发语言
lly2024067 小时前
Perl 正则表达式
开发语言
清水白石0087 小时前
Python 函数式编程实战:从零构建函数组合系统
开发语言·python
郝学胜-神的一滴7 小时前
Effective Modern C++ 条款36:如果有异步的必要请指定std::launch::async
开发语言·数据结构·c++·算法
小此方7 小时前
Re:从零开始的 C++ STL篇(六)一篇文章彻底掌握C++stack&queue&deque&priority_queue
开发语言·数据结构·c++·算法·stl
0 0 07 小时前
CCF-CSP 40-2 数字变换(transform)【C++】考点:预处理
开发语言·c++·算法
Web打印7 小时前
Phpask(php集成环境)之08 tp5验证码无法显示
开发语言·php
头发够用的程序员8 小时前
Python 魔法方法 vs C++ 运算符重载全方位深度对比
开发语言·c++·python
csbysj20208 小时前
Java 发送邮件
开发语言