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 :

[Stratégie] Comment lister les fichiers sous forme d'arborescence


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 253
    Par défaut [Stratégie] Comment lister les fichiers sous forme d'arborescence
    j'ai une methode qui liste des fichiers dans mon répertoire, et de mes répertoires.
    l'objectif est de proposer en téléchargement ces fichiers dans une IHM;

    le problème est le suivent dans mon répertoire je peux avoir 1000 sous-répertoires contenant 10000 fichiers.

    et pour l'instant mon programme liste tout les fichiers, de mon répertoire, mais lister 10000000 fichier ce n'est pas vraiment drôle !!!

    alors ma question est ce que vous pouvez m'aider pour que je puisse afficher seulement le sous dossier avec un petit "+", et quand on clique sur le "+", on afficher le sous dossier au les fichiers.

    eg:
    Dossier
    +sous-dossier1
    + sous-dossier2
    - sous-dosier3
    -fichier1
    -fichier2
    +sous-dossier3.1

    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
     
    public ArrayList<String> scanDir ( String theDirectory ) throws IOException {
     
    		File currDir = new File ( theDirectory );
     
    		if(!currDir.exists() || !currDir.isDirectory())
    			return null;
     
     
    		else {
     
    			//String[] fileList = currDir.list();
    			//String[] fileList = currDir.list(); 
    			File[] fileList1 = currDir.listFiles();
    			//System.out.println(fileList);
    			for(File f : fileList1){
    				if(f.isDirectory()){
    					finalListFiles=scanDir(theDirectory + File.separator + f.getName());
     
    				}
    				else{
     
    					String fileList =f.getName();
    					finalListFiles.add(fileList);
     
     
    				}
    			}
    			return finalListFiles;
    		}
     
     
    	}

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2009
    Messages : 112
    Par défaut
    Salut,

    Des frameworks comme GWT proposent des widgets permettant de gérer de genre de cas "assez" facilement.
    Après faudrait savoir quelle techno tu utilises pour pouvoir t'aider plus efficacement.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 253
    Par défaut
    en fait j'utilise tout simplement java, et mon objectif c'est de lister tout simplement les fichiers du dossier et les fichiers de sous dossiers, sous forme d'arborescence.

    ensuite, dans une deuxième étape je vais implémenter cette classe dans une page jsp/servlet.

    Cordialement,

  4. #4
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2009
    Messages : 112
    Par défaut
    Du côté de ton code java y'a pas grand chose à faire, si ce n'est adapter ta structure de données pour que tu puisses récupérer seulement le contenu d'un répertoire.
    D'ailleurs tu es sûr que ta fonction est correcte ? Il me semble qu'à ce niveau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(f.isDirectory()){
       finalListFiles=scanDir(theDirectory + File.separator + f.getName());
    }
    tu perds la référence d'un sous-répertoire à chaque que tu passes au suivant (enfin j'ai pas testé).

    Au final c'est au niveau de l'interface graphique que tu dois gérer l'affichage en arborescence. Je suis pas un pro du html donc je ne pourrais pas te dire comment le réaliser.
    En dernier recours tu peux toujours chercher un site avec un arbre et regarder le source.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 253
    Par défaut
    le programme je l'ai testé, il affiche tous les fichiers existants dans mon dossier et les sous-dossiers de mon dossier.

    et moi ce que je souhaite ce n'est pas vraiment gérer l'affichage , c'est juste au lieu de lister tout les fichiers un par un, j'affiche (les fichiers et les dossiers-fils) de mon dossier mère . puis j'affiche les fichier et les sous-dossier de mon dossier-fils, ainsi de suite......

    comme si c'est un affichage par niveau,

  6. #6
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Pour l'affichage, est-ce que tu utilises swing, ou une console ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 25/06/2007, 23h25
  2. Réponses: 7
    Dernier message: 08/01/2007, 19h18
  3. Comment lister les fichiers dans un répertoire ?
    Par PatricePatrice dans le forum Framework .NET
    Réponses: 18
    Dernier message: 04/01/2007, 10h15
  4. Réponses: 13
    Dernier message: 24/08/2006, 13h05
  5. [CF][PPC/C#] Comment lister les fichiers d'un répertoire ?
    Par dady dans le forum Windows Mobile
    Réponses: 18
    Dernier message: 20/05/2005, 14h35

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