package 第十二章; import java.io.IOException; import java.net.*; public class UDPServer { /*** * * @param args * @throws IOException */ public static void main(String[] args) throws IOException { // TODO Auto-generated method stub System.out.println("服务器开启成功"); DatagramSocket socket=new DatagramSocket(55555); while(true){ byte[]b=new byte[1024]; // UDP以数据包的形式发送 DatagramPacket packet=new DatagramPacket(b,b.length); socket.receive(packet); String s=new String(packet.getData(),0,packet.getLength()); // 获得到发送端的IP String ip=packet.getAddress().toString(); System.out.println(ip+":"+s); } } } //客户端 ackage 第十二章; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.Socket; import java.net.SocketException; import java.net.UnknownHostException; import java.util.Scanner; public class UDPClient { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub while(true){ Scanner scan=new Scanner(System.in); System.out.println("请输入要发送的数据"); String str =new String(); str=scan.nextLine(); byte[]b=str.getBytes(); // 服务器端的IP地址 InetAddress serverAddress=InetAddress.getByName("192.168.1.179"); // 参数列表:字节数组,数组的长度,服务器的IP地址,服务器的端口号 DatagramPacket packet=new DatagramPacket(b,b.length,serverAddress,55555); // DatagramSocket可以将这个数据包发送到服务器 DatagramSocket socket=new DatagramSocket(); socket.send(packet); } } }