/***************************** Autor: Agustín J. González http://www.elo.utfsm.cl/~agv 2004 *****************************/ /***************************** Para ejecutar: 1.- Instale Java Standard Edition development Kit (JDK) si no lo tiene http://java.sun.com 2.- Configure adecuadamente la variable de ambiente PATH . 3.- Compile el programa con: % javac UDPserver.java 4.- Ejecute el programa con: % java UDPserver *******************************/ /**************************** UDPServer Recibe datagramas en el puerto indicado y los muestra por pantalla. Trabaja en conjunto con UDPclient.java Red --> UDPserver --> Pantalla *****************************/ import java.io.*; import java.net.*; class UDPserver { public static void main (String argv[]) throws Exception { // construimos un socket ligado a un puerto. Pasa a ser servidor. DatagramSocket serverSocket = new DatagramSocket( Integer.parseInt(argv[0])); // buffer que contendrá los datos recibidos byte[] receiveData = new byte[256]; // Datagrama que recibe lo enviado por el cliente. DatagramPacket receivePacket = new DatagramPacket (receiveData, receiveData.length); String line; // almacenará la línea recibida. do { serverSocket.receive(receivePacket); // Recibimos un datagrama // y extraemos de él la línea enviada desde la posición 0 // al largo de datos recibidos. line = new String(receivePacket.getData(), 0, receivePacket.getLength()); System.out.print(line); // muestra línea en pantalla. }while(!line.equals("quit"+'\n')); // Cerramos ambos sockets serverSocket.close(); } }