J'ai cette fonction qui imprime le nom de tous les fichiers dans un répertoire de manière récursive. Le problème est que mon code est très lent car il doit accéder à un périphérique réseau distant à chaque itération.
Mon plan est de commencer par charger tous les fichiers du répertoire de manière récursive, puis de parcourir tous les fichiers avec l'expression régulière pour filtrer tous les fichiers que je ne veux pas. Quelqu'un a-t-il une meilleure suggestion?
public static printFnames(String sDir){
File[] faFiles = new File(sDir).listFiles();
for(File file: faFiles){
if(file.getName().matches("^(.*?)")){
System.out.println(file.getAbsolutePath());
}
if(file.isDirectory()){
printFnames(file.getAbsolutePath());
}
}
}
Ceci est juste un test plus tard, je n'utiliserai pas le code comme celui-ci, à la place je vais ajouter le chemin et la date de modification de chaque fichier qui correspond à une expression régulière avancée à un tableau.