Exemple d’envoi des fichiers à un host en format paquet datagramme

Author:

 fichier, socket, adresse, socket, java, datagram, table
Download

import java.io.File;
import java.io.FileInputStream;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
 
/**
  Envoyer un fichier en paquet Datagramme à l'aide
  des Socket
 */
public class UDPSend
{
 
  public static void main(String args[])
  	{
 
    try 
 
    	{
 
  	// Adresse IP du destinataire
    InetAddress IP = InetAddress.getByName("127.0.0.1");
 
    // Port du destinataire
    int port = 655;
 
        // Créer un objet fichier avec comme paramètre le fichier à envoyer
        File fichier = new File("c:/test.txt");
 
        // Déclarer un tableau d'octets qui va contenir les données du datagramme
        int len = (int) fichier.length();
        byte[] message = new byte[len];
        FileInputStream in = new FileInputStream(fichier);
        int bytes_read = 0, n;
 
        // Stocker le contenu du fichier dans le tableau
        do {
          n = in.read(message, bytes_read, len - bytes_read);
          bytes_read += n;
        } while ((bytes_read < len) &#038;& (n != -1));
 
      // Initialiser un paquet datagramme avec ses paramètres
      DatagramPacket paquet = new DatagramPacket(message, message.length, IP, port);
 
      // Créer un Socket datagramme
      DatagramSocket dsocket = new DatagramSocket();
 
      // Envoyer le fichier en paquet et fermer le socket
      dsocket.send(paquet);
      dsocket.close();
    } catch (Exception ex)
    {
      System.err.println(ex.getMessage());
    }
  }
}