Bonjour à tous,

D'avance toutes mes excuses si je n'emploie pas les bon termes technique, il y a bien longtemps que je n'ai pas touché à java.

J'essaie d'écrire une classe qui va lister le contenu d'un dossier ainsi que le contenu de tous ses sous-dossiers. Alors je tente un appel récursif de la classe ListingDirectory(), mais ça ne fonctionne pas:
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
 
public class TreeExplorer extends Object implements Serializable {
 
    private File Directory = null;
    private File[] list = null;
    private int countFile = 0;
    private int countDirectory = 0;
 
    public void setDirectoryPath(File Directory)
    {
        this.Directory = Directory;
    }
 
public void ListingDirectory()
   {
       if (Directory.isDirectory())
       {
           list = Directory.listFiles();
           if (list != null)
           {
               for (int i = 0; i < list.length; i++)
               {
 
                   if (list[i].isFile())
                   {
                   System.out.println(list[i]);  
                   countFile++;
                   }
 
                   if (list[i].isDirectory());
                   {
                   ListingDirectory();
                   countDirectory++;
                   }
 
               }
 
               System.out.println(countDirectory + " Directory, " + countFile + " Files.");
           }
       }
   }
Et je l'utilise comme ça dans mon main:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
TreeExplorer TreeExplorer = new TreeExplorer();
File Directory = new File(args[1]);
TreeExplorer.setDirectoryPath(Directory);
TreeExplorer.ListingDirectory();
le soucis c'est que je n'arrive pas d'autre message d'erreur que ça:

at mydedup.TreeExplorer.ListingDirectory(TreeExplorer.java:63)

D'avance merci pour toute suggestion