
{filelink=8997}
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) && (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());
}
}
}