j'ai posé une question sur la façon de supprimer tous les fichiers des dossiers dans un répertoire, mais garder les dossiers, cela peut être trouvé ici:suppression récursive provoque une erreur de débordement de pile
How to delete files of a directory but not the folders
L'une des solutions proposais était d'utiliser récursivité, pour y parvenir:
public void DeleteFiles() {
File file =
new File(
"D:/Documents/NetBeansProjects/printing~subversion/fileupload/web/"+
"resources/pdf/");
System.out.println("Called deleteFiles");
if (file.isDirectory()) {
for (File f : file.listFiles()) {
DeleteFiles();
}
} else {
file.delete();
}
}
Cependant, je viens d'obtenir une console pleine de dELetefiles Appelés, jusqu'à ce que je l'erreur de débordement de pile, il ne semble pas passer par le répertoire pour trouver les fichiers et les supprimer , Comment puis-je y parvenir?
Votre récursion est évidemment faux, vous devriez prendre un peu de papier et écrivez votre logique, qui pourrait vous aider à –
Si vous regardez la réponse originale cette question qui a utilisé la récursion, il avait un argument http://stackoverflow.com/questions/15041971/how-to-delete-files-of-a-directory-but-not-the-folders-java#answer-15042022 –