import java.net.*; import java.io.*; public class UdpServer { public static void main(String[] argv) { try { // 使用するポート番号 int port = Integer.parseInt(argv[0]); // 指定されたポート番号にソケットを作る DatagramSocket dgSock = new DatagramSocket(port); while (true) { // 受信パケット用データ領域の作成 byte buff1[]= new byte[512]; DatagramPacket pa1 = new DatagramPacket(buff1, buff1.length); dgSock.receive(pa1); // パケット受信 System.out.println("Received!"); System.out.print(new String(pa1.getData())); System.out.println("addr: "+pa1.getAddress()); System.out.println("port: "+pa1.getPort()); // 送信パケットの作成 DatagramPacket pa2 = new DatagramPacket(pa1.getData(), pa1.getLength(), pa1.getAddress(), pa1.getPort()); dgSock.send(pa2); System.out.println("Sent!"); } } catch (Exception e) { e.printStackTrace(); System.exit(1); } } }