package cn.dss.studay网络编程; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; public class UDPreceiveDemo { public static void main(String[] args) throws IOException { System.out.println("接收端开启了 "); DatagramSocket datagramSocket = new DatagramSocket(7777); while (true) { byte[] data = new byte[1024]; DatagramPacket datagramPacket = new DatagramPacket(data, data.length); datagramSocket.receive(datagramPacket); String address = datagramPacket.getAddress().getHostAddress(); int port = datagramPacket.getPort(); String data1 = new String(datagramPacket.getData(), 0, datagramPacket.getLength()); System.out.println(address + " " + port + data1); } // datagramSocket.close(); } }
package cn.dss.studay网络编程; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; public class SendDemo { public static void main(String[] args) throws IOException { // send_1(); send_2(); } private static void send_2() throws IOException { while (true) { DatagramSocket datagramSocket = new DatagramSocket(); System.out.println("发送端开启了!"); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); String str = null; while ((str = bufferedReader.readLine()) != null) { byte[] bytes = str.getBytes(); // DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length,InetAddress.getByName("PC-dss2019"), 7777); DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length,InetAddress.getByName("192.168.43.255"), 7777); datagramSocket.send(datagramPacket); } } // datagramSocket.close(); } private static void send_1() throws IOException { DatagramSocket datagramSocket = new DatagramSocket(8888); System.out.println("发送端开启了"); String str = "Hi~,你好啊。"; byte[] bytes = str.getBytes(); DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length, InetAddress.getByName("PC-dss2019"), 7777); datagramSocket.send(datagramPacket); datagramSocket.close(); } }