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

Java Discussion :

Extraire les noms de fichiers dans une arborescence


Sujet :

Java

  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2017
    Messages : 108
    Points : 89
    Points
    89
    Par défaut Extraire les noms de fichiers dans une arborescence
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    import java.io.File;
     
    /**
     * Lister le contenu d'un répertoire
     * http://www.fobec.com/java/964/lister-fichiers-dossiers-repertoire.html
     * @author fobec 2010
     */
    public class DiskFileExplorer {
     
        private String initialpath = "";
        private Boolean recursivePath = false;
        public int filecount = 0;
        public int dircount = 0;
     
    /**
     * Constructeur
     * @param path chemin du répertoire
     * @param subFolder analyse des sous dossiers
     */
        public DiskFileExplorer(String path, Boolean subFolder) {
            super();
            this.initialpath = path;
            this.recursivePath = subFolder;
        }
     
        public void list() {
            this.listDirectory(this.initialpath);
        }
     
        private void listDirectory(String dir) {
            File file = new File(dir);
            File[] files = file.listFiles();
            if (files != null) {
                for (int i = 0; i < files.length; i++) {
                    if (files[i].isDirectory() == true) {
                        System.out.println("Dossier: " + files[i].getAbsolutePath());
                        this.dircount++;
                    } else {
                        System.out.println("  Fichier: " + files[i].getName());
                        this.filecount++;
                    }
                    if (files[i].isDirectory() == true && this.recursivePath == true) {
                        this.listDirectory(files[i].getAbsolutePath());
                    }
                }
            }
        }    
    }
    j'aime recuperer les noms de tous les fichiers d'un répertoire dans une liste ;puisque cette classe fait juste un affichage;mais j'ai besoin de récuperer que les noms de tous les fichiers dans une liste ;disons que je veux que la methode retourne une liste des noms des fichiers

    merci par avance, j'espere que vous m'aidez

  2. #2
    Membre éprouvé
    Avatar de Cafeinoman
    Homme Profil pro
    Couteau suisse d'une PME
    Inscrit en
    Octobre 2012
    Messages
    628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Couteau suisse d'une PME

    Informations forums :
    Inscription : Octobre 2012
    Messages : 628
    Points : 1 256
    Points
    1 256
    Par défaut
    Remarque préalable : merci d'utiliser la balise code (le petit #) pour publier du code...

    Sinon c'est très simple, il suffit que ta methode listDirectory retourne une liste. Tu crées ta liste au début de la méthode, et au lieu d'incrementer dircount ou filecount, tu ajoute le nom du fichier (ce que tu print) à la liste...
    «Dieu ne joue pas aux dés.» - Albert Einstein. Et pan! 30 ans de retard dans la théorie quantique!
    «Tout n'est pas politique, mais la politique s'intéresse à tout.» - Nicolas Machiavel. Et surtout à ceux qui ne s'y intéressent pas.

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2017
    Messages : 108
    Points : 89
    Points
    89
    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
    26
    public static ArrayList listDirectory(String dir) {
     
     
     
          File file = new File(dir);
            File[] files = file.listFiles();
           ArrayList<String> tab=new ArrayList<>();
     
            if (files != null) {
                for (int i = 0; i < files.length; i++) {
                    if (files[i].isDirectory() == true) {
     
                       tab.add( files[i].getAbsolutePath());
     
                        //System.out.println("---------------------");
                    } if (files[i].isDirectory() == false){
     
                     tab.add(files[i].getName().replaceFirst(".xml", "");  
    return tab;}
                   if (files[i].isDirectory() != true || this.recursivePath != true) {
     
                      this.listDirectory(files[i].getAbsolutePath());}
     
     
     
            }}}}}

    merci infiniment pour votre réponse;mais j'arrive pas à corriger l'erreur de dernier (if)puisque y'a un appel récursive

  4. #4
    Membre éprouvé
    Avatar de Cafeinoman
    Homme Profil pro
    Couteau suisse d'une PME
    Inscrit en
    Octobre 2012
    Messages
    628
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Couteau suisse d'une PME

    Informations forums :
    Inscription : Octobre 2012
    Messages : 628
    Points : 1 256
    Points
    1 256
    Par défaut
    Je te le répète, utilise la balise, ca n'est vraiment pas agréable a lire.

    Pour ton appel, c'est simplement que tu as passé ta méthode en static, et que tu l'appel avec this. Enlève le static, il ne sert à rien ici...
    «Dieu ne joue pas aux dés.» - Albert Einstein. Et pan! 30 ans de retard dans la théorie quantique!
    «Tout n'est pas politique, mais la politique s'intéresse à tout.» - Nicolas Machiavel. Et surtout à ceux qui ne s'y intéressent pas.

  5. #5
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2017
    Messages : 108
    Points : 89
    Points
    89
    Par défaut
    ok, merci infiniment

    Désolé;j'ai compris

  6. #6
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2017
    Messages : 108
    Points : 89
    Points
    89
    Par défaut
    merciiii infiniment pour votre aide

    j'ai résolu mon problème graçe à vous

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

Discussions similaires

  1. Connection a une BD SQL SERVER Aidez Moi SVP????
    Par pop bob dans le forum Bases de données
    Réponses: 3
    Dernier message: 07/08/2005, 16h29
  2. Recuperation de ma base BD apres la sauvegarde Aidez Moi SVP
    Par pop bob dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/07/2005, 16h38
  3. J'ai du mal à me décider ! Aidez moi svp :)
    Par VanHelsing dans le forum Mobiles
    Réponses: 18
    Dernier message: 01/06/2005, 14h59
  4. Je vois pas d'où vient mon erreur!! Aidez moi SVP
    Par liliboms dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 04/04/2005, 08h25
  5. Réponses: 29
    Dernier message: 11/05/2004, 13h18

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