import java.awt.*; import java.io.File; import java.util.Arrays; import java.util.ArrayList; public class Repertoires { private File valeur; private ArrayList fils; public Repertoires(File racine) { if (!racine.isDirectory()) { this.valeur = racine; this.fils = null; } else { this.fils = new ArrayList<>(); this.valeur = racine; for (File fichier : racine.listFiles()) { this.fils.add(new Repertoires(fichier)); } } } public String toString(int nbRecursions) { String aRenvoyer = ""; for (int i = 0; i != nbRecursions; i++) { aRenvoyer += " "; } aRenvoyer += this.valeur.getName() + "\n"; if (this.fils != null) { for (Repertoires fichier : this.fils) { aRenvoyer += fichier.toString(nbRecursions + 1); } } return aRenvoyer; } public static void main(String[] args) { Repertoires racine = new Repertoires(new File(args[0])); System.out.println(racine.toString(0)); } }