zoukankan      html  css  js  c++  java
  • java udp网络编程

    import java.net.*;
    
    /*
    通过UDP传输发送文字数据
    1.建立socket服务
    2.提供数据,并封装到数据包中
    3.通过sokect服务的发送功能,将数据包发送出去
    4.关闭资源
    */
    class udpsend
    {
        public static void main(String[] arg) throws Exception {
            //1.创建UDP服务。通过DatagramSocket对象
            DatagramSocket ds = new DatagramSocket(1234);
            
            //2.确定数据并封装成数据包
            byte[] buf = "udp is coming".getBytes();
            DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("127.0.0.1"),4567);
            
            //3.通过socket服务,将已有的数据包发送出去
            ds.send(dp);
            
            //4.关闭资源
            ds.close();
            
            
            }
        }
    
    /*需求:定义一个应用程序勇于接收UDP协议传输的数据
    
    思路:
    1.定义udpsocket服务,通常会监听一个端口
    2.定义一个数据包。因为要存储接收到的字节数据
    因为数据包对象中有更多功能可以提取字节数据中的不同数据信息
    3.通过socket服务的receive方法将收到的数据存入已定义好的数据包中
    4.通过数据包对象的特有功能,将这些不同的数据取出,打印在控制台上
    5.关闭资源
    */
    class udprece
    {
        public static void main(String[] args) throws    Exception{
            //1.创建udp,建立端点
            DatagramSocket ds=new DatagramSocket(4567);
            
            //2.定义数据包,用于存储
            byte[] buf=new byte[1024];
            DatagramPacket dp=new DatagramPacket(buf,buf.length);
            
            //3.通过receive方法间接收到的数据存入数据包中
            ds.receive(dp);
            
            //4.通过数据包的方法获取其中的数据
            String ip=dp.getAddress().getHostAddress();
            
            String data=new String(dp.getData(),0,dp.getLength());
            
            int port=dp.getPort();
            
            System.out.println(ip+":"+port+"------"+data);
            
            //5.关闭资源
            ds.close();
            
            }
        }
  • 相关阅读:
    codeforces 57C 思维
    FOJ 2232 匈牙利算法找二分图最大匹配
    UVA 101 vector
    POJ 3070 矩阵mob
    codeforces 60B bfs
    codeforces 54A
    codeforces 466C 计数 codeforces 483B 二分 容斥
    FOJ 2213 简单几何
    CCF-最优配餐(BFS)
    杂论-FTP
  • 原文地址:https://www.cnblogs.com/NeilLing/p/4176777.html
Copyright © 2011-2022 走看看