Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.75 KB | None | 0 0
  1. /*
  2.   UDPEchoClient.java
  3.   A simple echo client with no error handling
  4. */
  5.  
  6. import java.io.IOException;
  7. import java.net.DatagramPacket;
  8. import java.net.DatagramSocket;
  9. import java.net.InetSocketAddress;
  10. import java.net.SocketAddress;
  11.  
  12. public class UDPEchoClient {
  13.     public static final int BUFSIZE= 1024;
  14.     public static final int MYPORT= 0;
  15.     public static final String MSG= "An Echo Message!";
  16.  
  17.     public static void main(String[] args) throws IOException {
  18.     byte[] buf= new byte[BUFSIZE];
  19.     if (args.length != 2) {
  20.         System.err.printf("usage: %s server_name port\n", args[1]);
  21.         System.exit(1);
  22.     }
  23.  
  24.     /* Create socket */
  25.     DatagramSocket socket= new DatagramSocket(null);
  26.  
  27.     /* Create local endpoint using bind() */
  28.     SocketAddress localBindPoint= new InetSocketAddress(MYPORT);
  29.     socket.bind(localBindPoint);
  30.  
  31.     /* Create remote endpoint */
  32.     SocketAddress remoteBindPoint=
  33.         new InetSocketAddress(args[0],
  34.                   Integer.valueOf(args[1]));
  35.  
  36.     /* Create datagram packet for sending message */
  37.     DatagramPacket sendPacket=
  38.         new DatagramPacket(MSG.getBytes(),
  39.                    MSG.length(),
  40.                    remoteBindPoint);
  41.  
  42.     /* Create datagram packet for receiving echoed message */
  43.     DatagramPacket receivePacket= new DatagramPacket(buf, buf.length);
  44.  
  45.     /* Send and receive message*/
  46.     socket.send(sendPacket);
  47.     socket.receive(receivePacket);
  48.  
  49.     /* Compare sent and received message */
  50.     String receivedString=
  51.         new String(receivePacket.getData(),
  52.                receivePacket.getOffset(),
  53.                receivePacket.getLength());
  54.     if (receivedString.compareTo(MSG) == 0)
  55.         System.out.printf("%d bytes sent and received\n", receivePacket.getLength());
  56.     else
  57.         System.out.printf("Sent and received msg not equal!\n");
  58.     socket.close();
  59.     }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement