2012-03-12 3 views
0

J'utilise FTPClient (org.apache.communs.net.ftp. FTPClient) pour télécharger certains fichiers sur un serveur FTP.
J'ai besoin de vérifier si les répertoires parents existent ou non; et créez-les si nécessaire.
Comment vérifier l'existence d'un fichier/répertoire en utilisant FTPClient?vérifier si un répertoire existe en utilisant FTPClient

Merci

Répondre

3

Vous souhaitez que la commande STAT FTP. Vous pouvez utiliser cette API call pour vérifier ce que vous cherchez.

+0

Salut, Merci; pouvez-vous expliquer plus? cela renvoie '213-STAT 213 End.'! Comment dois-je comprendre le répertoire existe de cela? – RYN

+1

Malheureusement STAT et LIST fournissent le même résultat. Je suppose que si vous obtenez une liste d'informations de longueur nulle ... et vous devrez pardonner le fait que ça fait des ANNÉES depuis que j'ai obtenu ce niveau bas dans le protocole FTP ... STAT et LIST si utilisé sur un répertoire existant au moins fournir '.' et '..' comme répertoires disponibles sur un répertoire valide. –

2

Essayez cette méthode:

public static boolean isExists(FTPClient ftpClient, String pathName) 
{ 
    ftpClient.getStatus(pathName); 
    return FTPReply.isPositiveCompletion(ftpClient.getReplyCode()); 
} 
0

Essayez ce code, il a travaillé pour moi .:

FTPClient ftpClient=null; 
     (ftpClient = new FTPClient()).connect("xxx.xxx.xxx.xxx");   

     if(ftpClient.login("user", "pass")){    
      System.out.println(ftpClient.cwd("folder/subfolder"));  
***// if returns 250, folder exists and if returned 550 folder does not exist***  

     } 
Questions connexes