Advertisement
sindibadthesailor

TP 4

Apr 28th, 2023
1,139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.89 KB | Source Code | 0 0
  1. import java.io.*;
  2. import java.net.*;
  3. public class UDPSend {
  4. static final int port = 6010;
  5.  
  6. public static void main(String args[]) throws Exception {
  7.     if (args.length != 2) {
  8.     System.out.println("Usage: java UDPSend <hostname> <message>");
  9.     System.exit(0); }
  10.     // On récupère l'adresse IP de l'hôte distant.
  11.     InetAddress address =
  12.     InetAddress.getByName(args[0]);
  13.     // Convertion du texte en tableau de byte
  14.     byte[] message;
  15.     message = args[1].getBytes();
  16.     // On construit le datagram.
  17.     // c'est dans le datagram qu'est précisé la
  18.     // destination finale hôte et le numéro de
  19.     // port de la destination finale.
  20.     int msglen=message.length;
  21.     DatagramPacket packet = new
  22.     DatagramPacket(message, msglen, address, port);
  23.     // Crée la socket pour l'envoi de datagrams,
  24.     // et effectue cet envoi.
  25.     DatagramSocket socket = new DatagramSocket();
  26.     socket.send(packet);
  27. }
  28. }
  29.  
  30. ------------------------
  31.  
  32.  
  33. //Ce programme écoute le port 6010 et affiche
  34. // la chaine de caractères reçue sur ce port.
  35. import java.io.*;
  36. import java.net.*;
  37.  
  38. public class UDPReceive {
  39. static final int port = 6010;
  40. public static void main(String args[]) throws Exception{
  41.     byte[] buffer = new byte[1024];
  42.     String s;
  43.     // Crée une socket d'écoute sur ce port.
  44.     DatagramSocket socket = new DatagramSocket(port);
  45.     for(;;) {
  46.     // Création du packet de réception.
  47.     DatagramPacket packet = new
  48.     DatagramPacket(buffer, buffer.length);
  49.     // écoute et réception d'un datagram.
  50.     socket.receive(packet);
  51.     // Conversion byte -> String à l'aide du constructeur
  52.     //String(ta_byte[], octpoidsfort, inddeb, longueur)
  53.     s = new String(buffer, 0, packet.getLength());
  54.     // affichage du packet reçu en indiquant
  55.     // la machine émettrice et le numéro de
  56.     // port de la machine émettrice.
  57.     System.out.println("UDPReceive: received from "
  58.     + packet.getAddress().getHostName() + ":"
  59.     +packet.getPort() + ": " + s);
  60. } } }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement