• java 25


    UDP协议的输出端:

     1 /*
     2      UDP发送数据:
     3          A:创建Socket发送端对象
     4          B:创建数据报包(把数据打包)
     5          C:调用Socket对象发送数据报包
     6          D:释放资源(底层是IO流)
     7  */
     8 public class NewSend {
     9 
    10     public static void main(String[] args) throws IOException {
    11 
    12         // A:创建Socket发送端对象
    13         DatagramSocket ds = new DatagramSocket();
    14 
    15         // B:创建数据报包(把数据打包)
    16         // public DatagramPacket(byte[] buf,int length,InetAddress address,int
    17         // port)
    18         byte[] bys = "UDP发送数据".getBytes();
    19         DatagramPacket dp = new DatagramPacket(bys, bys.length,
    20                 InetAddress.getByName("172.19.xx.xx"), 10010);
    21         
    22         //C:调用Socket对象发送数据报包
    23         ds.send(dp);
    24         
    25         //释放资源
    26         ds.close();
    27     }
    28 
    29 }

    接收端:

     1 /*
     2     UDP接收数据:
     3         A:创建Socket接收端对象
     4         B:创建一个数据报包来接收数据(创建容器)
     5         C:调用Socket对象的方法来接收数据报包
     6         D:解析数据包(byte转换成String),并打印在控制台
     7         E:释放资源
     8 */
     9 public class NewReceive {
    10 
    11     public static void main(String[] args) throws IOException {
    12         
    13         //A:创建Socket接收端对象
    14         DatagramSocket ds = new DatagramSocket(10010);
    15         
    16         //B:创建一个数据报包来接收数据(创建容器)
    17         byte[] bys = new byte[1000];
    18         DatagramPacket dp = new DatagramPacket(bys,bys.length);
    19         
    20         //C:调用Socket对象的方法来接收数据报包
    21         ds.receive(dp);
    22         
    23         //获取发送端的ip
    24         String ip = dp.getAddress().getHostName();
    25         //D:解析数据包(byte转换成String),并打印在控制台
    26         String s = new String(dp.getData(),0,dp.getLength());
    27         //打印到控制台
    28         System.out.println(ip+"--"+s);
    29         
    30         //释放资源
    31         ds.close();
    32         
    33 
    34     }
  • 相关阅读:
    macbook如何清理磁盘中的“容器中的其他宗卷”
    Maven本地仓库与远程仓库配置
    查看MySQL库、表所占磁盘空间大小
    数据库操作
    Mac Mysql初始密码重置
    Vue 性能优化经验总结
    【读书笔记】对象创建摘录
    【读书笔记】 函数柯里化
    js实现仿windows文件按名称排序
    本来想偷懒的今天,想了想,还是写一篇吧,前端登录界面,用的BOOTSTRAP
  • 原文地址:https://www.cnblogs.com/LZL-student/p/5962159.html
Copyright © 2020-2023  润新知