IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

[FTP] Test de l'existence d'un fichier sur un serveur ftp


Sujet :

Entrée/Sortie Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 104
    Points : 64
    Points
    64
    Par défaut [FTP] Test de l'existence d'un fichier sur un serveur ftp
    Bonjour,

    je cherche à tester l'existence de fichier sur un serveur ftp à partir du nom du fichier/

    J'ai testé de cette facon mais ce la ne fonctionne pas:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    boolean exists = (new File("ftp://login:password@srvdev01.cgbi.net/000001.jpg")).exists(); 
    if (exists)  
        System.out.println("exist"); // File or directory exists

    Comment faire pour reussir à tester l'existence du fichier?

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 220
    Points : 266
    Points
    266
    Par défaut
    A priori, je te dirai d'utiliser une API Java FTP, puis de te connecter en ftp par java, et d'utiliser une methode type ListFiles, (il y a des chances qu'il y ait ca dans l'API, quand meme...)

    Et de voir si tu trouves ton nom de fichier...

  3. #3
    Membre habitué
    Inscrit en
    Juin 2004
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 165
    Points : 136
    Points
    136
    Par défaut
    Tu dois utiliser l'api Commons Net de Jakarta (Fondation Apache).

    http://jakarta.apache.org/site/downl...ommons-net.cgi

    Elle est très facile à utiliser et répond complètement à tes besoins.

  4. #4
    Membre habitué
    Inscrit en
    Juin 2004
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 165
    Points : 136
    Points
    136
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    	//CONNEXION & LOG SUR LE SERVEUR FTP
    	public void connectFTP(){
     
    		try{
    			ftp = new FTPClient();
    			String sServer = "100.100.100.1";
    			String sLogin = "login";
    			String sPassword = "passwd";
     
    			//Connection au serveur FTP
    			ftp.connect(sServer);
    			System.out.println(ftp.getReplyString());
     
    			//Log
    			ftp.login(sLogin, sPassword);
    			System.out.println(ftp.getReplyString());
     
     
    		}catch(Exception exc){
    			System.out.println("-*- Erreur -*-");
    			exc.printStackTrace();
    		}
     
    	}


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
    	//DELOG & DECONNEXION DU SERVEUR FTP
    	public void disconnectFTP(){
     
    		try{
    			//Delog
    			ftp.logout();
    			System.out.println("Délogué du serveur");
    			System.out.println(ftp.getReplyString());
     
    			//Deconnexion
    			ftp.disconnect();
    			System.out.println("Déconnecté du serveur");
    			System.out.println(ftp.getReplyString());
    		}catch(Exception exc){
    			System.out.println("-*- Erreur -*-");
    			exc.printStackTrace();
    		}
    	}

    Il te faut déclarer en donnée membre FTPClient ftp;
    pour savoir si le fichier existe utilise les méthodes de la classe FTPClient.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 104
    Points : 64
    Points
    64
    Par défaut
    je n'ai pas de probleme pour faire ma connection ftp mais c'est juste pour tester l'existance d'un de ces fichiers sur ce serveur

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 220
    Points : 266
    Points
    266
    Par défaut
    Ben c'est par la connection FTP que tu testes l'existence, d'ou les posts envoyés popur te repondre...

    D'apres les explications de n00bi, il te faut utiliser la classe FTPClient...

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 220
    Points : 266
    Points
    266
    Par défaut
    Je viens de charger l'API d'ailleurs, beaucoup plus complet et efficace que ce que j'avais... Merci n00bi !

    (faudra que je passe plus de temps a aller voir les commons de Jakarta...)

  8. #8
    Membre habitué
    Inscrit en
    Juin 2004
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 165
    Points : 136
    Points
    136
    Par défaut
    J'ai découvert ca y a pas longtemps aussi ... c'est d'une utilisation simplissime ^^ merci Apache

    T'es arrivé a faire ce que tu voulais alors lapartdombre?

    J'ai bien compris que ce n'était pas la connexion FTP qui te posait probleme ... mais je te conseilles d'utiliser les commons net pour savoir si ton fichier existe ... et pour te faciliter le travail je te donne le code de la connexion et déconnexion pour que tu n'aies plus qu'a te consacrer à la recherche de l'existence de ton fichier ...

    Bonne chance.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 104
    Points : 64
    Points
    64
    Par défaut
    oui j'y suis arrivé en faisant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    if (ftp.login("*****","*****" ))
    			{
    				String files2 = ftp.listFiles();
    				if (files2.indexOf(image+".jpg") != -1)
    					chemin= "ftp://trombinoscope:Trom75.a@srvdev01.cgbi.net/"+image+".jpg";
     
     
    			}

  10. #10
    Membre expérimenté
    Avatar de viena
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    1 071
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 071
    Points : 1 512
    Points
    1 512
    Par défaut
    un petit résolu stp
    merci
    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java
    "La liberté de tout être s'arréte là où commence celle de l'autre... Respecter l'autre, c'est préserver sa liberté d'être, de penser et de vivre"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FTP] Test de l'existence d'un fichier distant
    Par helww dans le forum Langage
    Réponses: 6
    Dernier message: 06/08/2007, 15h00
  2. Réponses: 17
    Dernier message: 18/08/2006, 13h13
  3. Envoyer un fichier sur un serveur FTP par proxy
    Par Tierisa dans le forum Access
    Réponses: 4
    Dernier message: 13/12/2005, 16h39
  4. Envoi de fichier sur un serveur FTP
    Par pepe2006 dans le forum Access
    Réponses: 6
    Dernier message: 02/12/2005, 10h19
  5. Réponses: 4
    Dernier message: 15/09/2005, 13h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo