UDP协议

发送数据:

java 复制代码
public class SendMessageDemo {
    static void main() throws IOException {
        //发送数据

        //1.创建DatagramSocket对象(快递公司)
        //细节:绑定对应的端口
        //空参:所有可用的端口随机一个进行使用
        //有参:指定端口号进行绑定
        DatagramSocket ds = new DatagramSocket();
        //2.打包数据
        String str = "你好维阿";
        byte[] bytes = str.getBytes();
        InetAddress address = InetAddress.getByName("127.0.0.1");
        int port = 10086;
        DatagramPacket dp = new DatagramPacket(bytes,bytes.length,address,port);
        //3.发送数据
        ds.send(dp);
        //4.释放资源
        ds.close();
    }
}

接受数据:

java 复制代码
public class ReceiveMessageDemo {
    static void main() throws IOException {
        //接收数据
        //1.创建DatagramSocket对象(快递公司)
        //细节
        //接收时一定要绑定端口
        //端口要和发送的端口保持一致
        DatagramSocket ds = new DatagramSocket(10086);

        //2.接受数据包
        byte[] bytes = new byte[1024];
        DatagramPacket dp = new DatagramPacket(bytes,bytes.length);
        ds.receive(dp);

        //3.接受数据包
        byte[] data = dp.getData();
        int len = dp.getLength();
        InetAddress address = dp.getAddress();
        int port = dp.getPort();
        System.out.println("接收到数据"+new String(data,0,len));
        System.out.println("该数据是从"+address+"这台电脑中的"+port+"这个端口发出的");


    }
}
相关推荐
云梦谭18 分钟前
WebSocket 协议详解:从 HTTP 握手到全双工通信
websocket·网络协议·http
中屹指纹浏览器svip1 小时前
静态 IP和动态 IP,搭配指纹浏览器该怎么选?
网络·网络协议·tcp/ip·中屹指纹浏览器
木子n12 小时前
车载以太网与SOME/IP服务化通信实战-02.状态机与订阅:SOME/IP-SD的三态迁移、重传账与上电风暴
嵌入式硬件·网络协议·车载系统·车载以太网·some/ip
ITxiaobing20232 小时前
选型不踩坑:IPinfo 之外,IP 地址定位服务还有哪些可选项
网络·网络协议·tcp/ip
A心有千千结2 小时前
通过 SSH 反向代理让服务器借用本机网络访问 GitHub 的最佳实践
linux·服务器·网络·git·ssh·github
用户2788607285673 小时前
战争雷霆换区记录:字段里的「未知」不能写成正常
网络协议·游戏开发
15Moonlight3 小时前
Linux网络(03):Socket 编程 TCP
linux·网络·tcp/ip
Lynne3093 小时前
TSN 在变电站自动化通信网络升级中的应用价值与技术挑战
服务器·网络·数据库
C++ 老炮儿的技术栈3 小时前
std::atomic 是什么
linux·c语言·网络·c++·visual studio