问题:一般来说,应该是发送方先发送,然后接收方接收,但是由于发送的速度很快,在发送方关闭之前根本接受不到数据。 解决:先运行接收方,再运行发送方时,就可以快速接收到消息。 public class UDP_service { public static void main(String[] args) throws Exception { System.out.println("发动方启动中!"); // 1.使用DatagramSocket 指定端口,创建发送端 DatagramSocket data = new DatagramSocket(8888); // 2.准备数据并要转成字节数组 String message = "哈哈哈,这是我的数据!"; byte[] b = message.getBytes(); // 3.封装成DatagramPacket包裹,需要指定目的地 DatagramPacket packet = new DatagramPacket(b, 0, b.length, new InetSocketAddress("localhost",6666)); // 4.发送包裹send data.send(packet); // 5.释放资源 data.close(); System.out.println("发送数据完成!!"); } }
public class UDP_client { public static void main(String[] args) throws Exception { Syste