Waits to receive datagrams sent the specified port : DatagramPacket « Network Protocol « Java

Waits to receive datagrams sent the specified port

Waits to receive datagrams sent the specified port

import java.net.DatagramPacket;
import java.net.DatagramSocket;

 * This program waits to receive datagrams sent the specified port. When it
 * receives one, it displays the sending host and prints the contents of the
 * datagram as a string. Then it loops and waits again.
public class UDPReceive {
  public static final String usage = "Usage: java UDPReceive <port>";

  public static void main(String args[]) {
    try {
      if (args.length != 1)
        throw new IllegalArgumentException("Wrong number of args");

      // Get the port from the command line
      int port = Integer.parseInt(args[0]);

      // Create a socket to listen on the port.
      DatagramSocket dsocket = new DatagramSocket(port);

      // Create a buffer to read datagrams into. If anyone sends us a
      // packet containing more than will fit into this buffer, the
      // excess will simply be discarded!
      byte[] buffer = new byte[2048];

      // Create a packet to receive data into the buffer
      DatagramPacket packet = new DatagramPacket(buffer, buffer.length);

      // Now loop forever, waiting to receive packets and printing them.
      for (;;) {
        // Wait to receive a datagram

        // Decode the bytes of the packet to characters, using the
        // UTF-8 encoding, and then display those characters.
        String msg = new String(buffer, 0, packet.getLength(), "UTF-8");
        System.out.println(packet.getAddress().getHostName() + ": " + msg);

        // Reset the length of the packet before reusing it.
        // Prior to Java 1.1, we'd just create a new packet each time.
    } catch (Exception e) {


Related examples in the same category

1.Get data from DatagramPacket
2.Get address and port from DatagramPacket
3.Create DatagramPacket from byte array
4.Sends the specified text or file as a datagram to the specified port of the specified host