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

Windows Forms Discussion :

[C#] lister tous les dossier qui existent ds un repertoire


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 48
    Points : 41
    Points
    41
    Par défaut [C#] lister tous les dossier qui existent ds un repertoire
    Bonjour;

    je veux savoir comment je peux faire en C# pour lister tous les repertoires qui exisent ds un repertoires.

    merci.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    salut

    avec l'object DirectoryInfo tu pourras y acceder

    The Monz, Toulouse
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  3. #3
    Membre régulier Avatar de anas.eh
    Profil pro
    Inscrit en
    Février 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 181
    Points : 119
    Points
    119
    Par défaut
    J'ai déjà travaillé sur ça, le code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    foreach (string subfolder in Directory.GetDirectories(racine.FullPath)) 
    //racine = c'est le dossier racine 
    {
    MessageBox.Show(Path.GetFileName(subfolder).ToString());
    }

  4. #4
    Rédacteur

    Avatar de Jérôme Lambert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2003
    Messages
    4 451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 451
    Points : 14 357
    Points
    14 357
    Par défaut
    Citation Envoyé par anas.eh Voir le message
    J'ai déjà travaillé sur ça, le code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    foreach (string subfolder in Directory.GetDirectories(racine.FullPath)) 
    //racine = c'est le dossier racine 
    {
    MessageBox.Show(Path.GetFileName(subfolder).ToString());
    }
    Et si les répertoires ont des sous répertoires, comment fait-on ?


    Je trouve qu'il n'y a rien de mieux qu'une fonction récursive !

    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
    26
    class Program
    {
        static void Main(string[] args)
        {
            string strDirectory = @"C:\Inetpub";
     
            if (System.IO.Directory.Exists(strDirectory))
            {
                DisplaySubDirectories(strDirectory);
                System.Console.Read();
            }
            else
            {
                System.Console.WriteLine("Ce répertoire n'existe pas !");
            }
        }
     
        public static void DisplaySubDirectories(string strDirectory)
        {
            foreach (string currentSubDirectory in System.IO.Directory.GetDirectories(strDirectory))
            {
                System.Console.WriteLine(currentSubDirectory);
                DisplaySubDirectories(currentSubDirectory);
            }
        }
    }
    Jérôme Lambert
    Développeur, Architecte, Rédacteur & Fan technologies Microsoft
    Ma boite informatique | Mon profil LinkedIn

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 38
    Points : 47
    Points
    47
    Par défaut
    Salut,

    Pour gérer les sous-dossier, à mon avis, une fonction récursive est un excellent choix. Je pense aussi que l'utilisation de la classe DirectoryInfo est faite en partie pour ce que tu veux faire drayif.

  6. #6
    Membre régulier Avatar de anas.eh
    Profil pro
    Inscrit en
    Février 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 181
    Points : 119
    Points
    119
    Par défaut
    Citation Envoyé par drayif Voir le message
    Bonjour;

    je veux savoir comment je peux faire en C# pour lister tous les repertoires qui exisent ds un repertoires.

    merci.
    Ce qu'il veut c'est lister tous les repertoires, c'est tout, et s'il veut les sous repertoires c'est autre chose ==> récursivité

  7. #7
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 48
    Points : 41
    Points
    41
    Par défaut
    mecri, ca marcher

  8. #8
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    232
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 232
    Points : 94
    Points
    94
    Par défaut
    SaLuT

    Citation Envoyé par Cardi Voir le message


    Je trouve qu'il n'y a rien de mieux qu'une fonction récursive !
    juste par curiosité , y a t il un autre moyen autre que la récursivité?

    merci

  9. #9
    Rédacteur

    Avatar de Jérôme Lambert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2003
    Messages
    4 451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 451
    Points : 14 357
    Points
    14 357
    Par défaut
    Citation Envoyé par rdh123 Voir le message
    SaLuT

    juste par curiosité , y a t il un autre moyen autre que la récursivité?

    merci
    Je ne sais pas trop. Je n'ai pas voulu dire par là qu'il existait d'autres moyens et je ne suis pas non plus en train de dire qu'il n'y a aucun autre moyen. Mais si il devait exister un autre moyen de faire cela, je pense que la technique de la récursivité reste la meilleure solution.
    Jérôme Lambert
    Développeur, Architecte, Rédacteur & Fan technologies Microsoft
    Ma boite informatique | Mon profil LinkedIn

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 15/08/2019, 09h44
  2. Réponses: 1
    Dernier message: 05/11/2014, 20h27
  3. Réponses: 4
    Dernier message: 02/08/2011, 17h01
  4. Copier un fichier dans tous les dossier qui contiennent un .ini
    Par proteine1024 dans le forum VBScript
    Réponses: 12
    Dernier message: 17/09/2009, 08h19
  5. Lister tous les triggers qui sont DISABLE
    Par mpeppler dans le forum Oracle
    Réponses: 2
    Dernier message: 23/08/2006, 10h05

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