Lister les sous répertoires d'un répertoire ftp

Résolu
katwes Messages postés 43 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 7 mai 2010 - 6 nov. 2007 à 19:15
katwes Messages postés 43 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 7 mai 2010 - 7 nov. 2007 à 12:50
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

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
6 nov. 2007 à 22:22
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-
3
katwes Messages postés 43 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 7 mai 2010
7 nov. 2007 à 12:50
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
3
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
6 nov. 2007 à 20:34
Salut,
Il existe plusieurs libraires gratuites qui facilitent grandement la communication avec un server FTP.
Pouurquoi ne pas essayer comme ceci?

<hr />
-My Blog-
0
katwes Messages postés 43 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 7 mai 2010
6 nov. 2007 à 21:21
J'ai essayé mais toutes celles que j'ai trouvé ne listent que les fichiers pas les répertoires
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
katwes Messages postés 43 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 7 mai 2010
7 nov. 2007 à 09:53
Merci ça fonctionne!!

Mais j'aurais aimé pouvoir modifier mon code, car seule la fonction de récupération des répertoires me manquait.
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
7 nov. 2007 à 10:03
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-
0
katwes Messages postés 43 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 7 mai 2010
7 nov. 2007 à 10:06
Oui, mais je garde cette librairie bien pratique pour mes prochains développements .
0
Rejoignez-nous