roievil Taking Fire, Need Assistance.. | alors comme le dit l'entête j'aimerai pouvoir itérer sur tous les fichiers d'un repertoire et de ses sous-repertoire
Mais pouvoir gérer la profondeur des fichiers que je liste : si c dans le xeme sous repertoire je ne veux pas le lister.
je n'arrive pas a réinitialiser ma variable j dans le programme récursif suivant :
Code :
- /**
- * @author Olivier Glorieux
- *
- * Cette méthode permet de parcourir tous les fichiers contenus dans
- * un repertoire entré et ses sous-repertoires. On veut s'arrêter au
- * à un seuil de profondeur entré : k l'indice de profondeur sera j
- */
- public static void itererRepertoire(String repertoire, int j, int k) {
- File dir = new File(repertoire);
- System.out.println(repertoire) ;
- System.out.println("j : " + j) ;
- //Once you have the appropriate path, you can iterate through its contents:
- //List directory
- // si le repertoire courant est bien un repertoire
- if(dir.isDirectory()){
- String s[] = dir.list();
- for (int i=0; i<s.length; i++){
-
- File dirTemp = new File(repertoire + s[i] + "\\" );
- // si le terme de la liste est lui-même un répertoire
- if(dirTemp.isDirectory() && j<k){
- j++ ;
- itererRepertoire(repertoire + s[i] + "\\", j, k);
- }
- // si le terme de la liste est un fichier
- if(!dirTemp.isDirectory()){
- System.out.println("fichier : " + s[i]);
- }
- }
- }
- }
- }
|
déjà avez vous mieux comme code?
merci,
Olivier |