Lister les sous répertoires d'un répertoire ftp [Résolu]

Signaler
Messages postés
43
Date d'inscription
lundi 17 octobre 2005
Statut
Membre
Dernière intervention
7 mai 2010
-
Messages postés
43
Date d'inscription
lundi 17 octobre 2005
Statut
Membre
Dernière intervention
7 mai 2010
-
Bonjour,

Je souhaite lister les répertoires se trouvant dans le répertoire par défaut.
J'utilise la fonction NLST mais cela ne me retourne que la liste des fichiers.

que faut-il changer au code  ?

Merci d'avance.

public
string[] List(
string mask){

if ( !
this.loggedin )
this.Login();

Socket cSocket = createDataSocket();

this.sendCommand(
"NLST " + mask);

if(!(
this.resultCode == 150 ||
this.resultCode == 125))
throw
new
FtpException(
this.result.Substring(4));

this.message =
"";

DateTime timeout =
DateTime.Now.AddSeconds(
this.timeoutSeconds);

while( timeout >
DateTime.Now ){

int bytes = cSocket.Receive(buffer, buffer.Length, 0);

this.message += ASCII.GetString(buffer, 0, bytes);

if ( bytes <
this.buffer.Length )
break;}

string[] msg =
this.message.Replace(
"\r",
"").Split(
'\n');cSocket.Close();

if (
this.message.IndexOf( "Fichier ou repertoire inexistant" ) !-1 )msg

new
string[]{};

this.readResponse();

if ( this.resultCode !226 )msg

new
string[]{};

return msg;}

7 réponses

Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
Si mes souvenirs sont bons, j'avais fait quelques choses dans ce genre dans cette source:
http://www.csharpfr.com/codes/VIDEOTHEQUE-MOVIES_42128.aspx

<hr />
-My Blog-
Messages postés
43
Date d'inscription
lundi 17 octobre 2005
Statut
Membre
Dernière intervention
7 mai 2010

J'ai trouvé d'ou venait le problème il suffit juste d'envoyer uniquement la commande NLST

this.sendCommand("NLST");
 
la variable mask contenait "*.*" ce qui restraignait aux fichiers
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
Salut,
Il existe plusieurs libraires gratuites qui facilitent grandement la communication avec un server FTP.
Pouurquoi ne pas essayer comme ceci?

<hr />
-My Blog-
Messages postés
43
Date d'inscription
lundi 17 octobre 2005
Statut
Membre
Dernière intervention
7 mai 2010

J'ai essayé mais toutes celles que j'ai trouvé ne listent que les fichiers pas les répertoires
Messages postés
43
Date d'inscription
lundi 17 octobre 2005
Statut
Membre
Dernière intervention
7 mai 2010

Merci ça fonctionne!!

Mais j'aurais aimé pouvoir modifier mon code, car seule la fonction de récupération des répertoires me manquait.
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
Sorry, je ne peux pas t'aider, je ne connais pas les commandes FTP par coeur...
Continues de chercher dans la documentation...

<hr />
-My Blog-
Messages postés
43
Date d'inscription
lundi 17 octobre 2005
Statut
Membre
Dernière intervention
7 mai 2010

Oui, mais je garde cette librairie bien pratique pour mes prochains développements .