zoukankan      html  css  js  c++  java
  • 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     }
  • 相关阅读:
    Spring&AOP&JDK和Cglib动态代理&AspectJ进行AOP开发(XML方式)
    python 切换工作目录
    python 布隆过滤器
    python sys.path.append()
    python encrypt 实现AES加密
    python 魔术方法
    python re匹配中文和非中文
    python 文件整理 shutil
    python定时任务框架
    mac 系统修改环境变量
  • 原文地址:https://www.cnblogs.com/LZL-student/p/5962159.html
Copyright © 2011-2022 走看看