cs_kcd
Messages postés3Date d'inscriptionsamedi 24 janvier 2004StatutMembreDernière intervention 9 février 2004
-
24 janv. 2004 à 16:59
cs_dominion
Messages postés230Date d'inscriptionmardi 21 janvier 2003StatutMembreDernière intervention15 mai 2008
-
5 mars 2005 à 17:33
Bonjour,
je dois coder un clinet FTP en Java, et je voudrais savoir si parmis il y en avais qui s'était déjà penché sur le problème.
Voici un début de code qui envoie les commandes au serveur FTP, et qui reçoit les réponses sur une ligne seulement...Il me manque le trnasfert de fichiers mais je ne sais comment faire..
import java.io.*;
import java.net.*;
/**
* @author gui
*
* To change the template for this generated type comment go to
* Window>Preferences>Java>Code Generation>Code and Comments
* client multithread qui ne se déconnecte pas après émission d'une commande
*/
public class ClientMultiThread extends Thread {
// le socket de communication
Socket clt;
// pour lire et ecrire dans le socket
DataInputStream is;
PrintStream os;
// lecture au clavier
BufferedReader console;
// variables du client
String nomserveur, message;
// port FTP : 21
final static int PORT_FTP=21;
/****************
* constructeur *
****************/
public ClientMultiThread() {
// demande l'adresse et le port de connexion au serveur
console = new BufferedReader(new InputStreamReader(System.in));
// lecture au clavier de l'adresse du serveur FTP
//try {
/*System.out.println("Entrez l'hote de destination : ");
nomserveur = console.readLine();*/
nomserveur="192.168.1.4";
/*} catch (IOException e1) {
e1.printStackTrace();
}*/
// initialiser le socket
try {
clt = new Socket(nomserveur, PORT_FTP);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
message="";
}
/* methode run() */
public void run() {
while (true) {
try {
// cree les flux d'E/S
// lecture des réponses du serveur
is = new DataInputStream(clt.getInputStream());
// émission des commandes
os = new PrintStream(clt.getOutputStream());
/*********************************************************
* affichage des réponses du serveur
*********************************************************/
// pour lire un caractere
int c;
// boucle de lecture de la chaîne renvoyée par le serveur
do {
// lecture du caractère
c = is.read();
// on cast le caractère lu et on l'affiche
System.out.print((char) c);
} while(c!='\r');
/*****************************************************
* envoi des commandes au serveur
*****************************************************/
// bash : invite l'utilisateur a taper une commande
System.out.print("ftp> ");
// lecture de la commande saisie
message = console.readLine();
// emission de la commande vers le serveur
os.println(message);
cs_kcd
Messages postés3Date d'inscriptionsamedi 24 janvier 2004StatutMembreDernière intervention 9 février 2004 9 févr. 2004 à 19:07
Qui a dit que j'étais sur Windows d'abord ;)? bref j'ai rendu mon travail (vraiment pas très correct d'ailleurs) et j'ai laissé tombé cette histoire de client FTP en Java....Peut être le reprendrais-je plus tard qui sais....
KcD