cblupo
8/23/2017 - 6:33 PM

udp server.java

// Port number used by the server
public static final int SERVER_PORT = 9832;

// Make a socket for sending and receiving messages.
DatagramSocket sock = null;
try {
  sock = new DatagramSocket( SERVER_PORT );
} catch( IOException e ){}

// Reusable packet for receiving messages, hopefully big enough
// for any message we'll receive.
byte[] recvBuffer = new byte [ 1024 ];
DatagramPacket recvPacket = new DatagramPacket( recvBuffer, recvBuffer.length );

// Keep reading messages and sending responses.
try {
  while( true ){
    // Get a packet.
    sock.receive( recvPacket );

    // Turn it into a string.
    String str = new String( recvBuffer, 0, recvPacket.getLength() );
    
    // Turn the string into a datagram packet, and send it back where the
    // messagee came from.
    byte[] sendBuffer = str.getBytes();
    DatagramPacket sendPacket = new DatagramPacket( sendBuffer, sendBuffer.length, recvPacket.getAddress(), recvPacket.getPort() );
    sock.send( sendPacket );
  }
} catch( IOException e ){
  System.err.println( "Error communicating with a client" );
}