zoukankan      html  css  js  c++  java
  • UDP通信(二)

    package demo02;
    
    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    
    public class UDPrecieve {
        public static void main(String[] args) throws IOException {
            //接收端
            //1.创建码头,绑定端口号
            DatagramSocket ds =new DatagramSocket(8000);
            //2.创建字节数组,接收发来的数据
            byte [] b =new byte [1024];
            while(true){
                //3.创建数据包对象
                DatagramPacket dp =new DatagramPacket(b, b.length);
                //4.接收数据
                ds.receive(dp);
                //5.拆包
                int len =dp.getLength();
                String ip =dp.getAddress().getHostAddress();
                int port =dp.getPort();
                System.out.println("ip:"+ip+"端口号:"+port+"内容:"+new String (b,0,len));
            }
            
            //6.释放资源
            //ds.close();
        }
        
        
    }
    package demo02;
    
    import java.io.IOException;
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    import java.net.InetAddress;
    import java.net.SocketException;
    import java.net.UnknownHostException;
    import java.util.Scanner;
    
    public class UDPSend {
    
        public static void main(String[] args) throws IOException {
            // 发送端
            Scanner sc = new Scanner(System.in);
            // 1.创建数据包对象,封装要发送的数据,接收端的IP,接收端的接口
            InetAddress inet = InetAddress.getByName("192.168.1.172");
            // InetAddress inet =InetAddress.getLocalHost();//本机
            // 2.创建码头对象,进行数据包的发送
            DatagramSocket ds = new DatagramSocket();
            while (true) {
                System.out.println("请输入要传输的数据:");
                String mes = sc.nextLine();
                byte[] b = mes.getBytes();
                DatagramPacket dp = new DatagramPacket(b, b.length, inet, 8000);
                ds.send(dp);
            }
            // 3.关闭资源
            // ds.close();
        }
    
    }
  • 相关阅读:
    获取时间对象
    定时器
    undefined与return
    获取设置非行间样式
    NaN
    return,break与continue的区别
    数据类型
    程序的机器级表示
    计算机内数字的表示
    计算机系统漫游
  • 原文地址:https://www.cnblogs.com/Jxliu/p/9253208.html
Copyright © 2011-2022 走看看