En Java, je souhaite supprimer tout le contenu d'un dossier contenant des fichiers et des dossiers.Suppression d'un dossier de Java
public void startDeleting(String path) {
List<String> filesList = new ArrayList<String>();
List<String> folderList = new ArrayList<String>();
fetchCompleteList(filesList, folderList, path);
for(String filePath : filesList) {
File tempFile = new File(filePath);
tempFile.delete();
}
for(String filePath : folderList) {
File tempFile = new File(filePath);
tempFile.delete();
}
}
private void fetchCompleteList(List<String> filesList,
List<String> folderList, String path) {
File file = new File(path);
File[] listOfFile = file.listFiles();
for(File tempFile : listOfFile) {
if(tempFile.isDirectory()) {
folderList.add(tempFile.getAbsolutePath());
fetchCompleteList(filesList,
folderList, tempFile.getAbsolutePath());
} else {
filesList.add(tempFile.getAbsolutePath());
}
}
}
Ce code ne fonctionne pas, quelle est la meilleure façon de procéder?
Que sont CONTINUE et TERMINER? Devrais-je les importer de quelque part? – bikashg
@bikashg constantes enum à l'intérieur de java.nio.file.FileVisitResult. La plupart des IDE devraient être assez intelligents pour suggérer d'importer le type enum. –
Pour ceux dont l'IDE n'est pas assez intelligent (comme le mien), ajoutez cette déclaration d'importation au début du fichier manuellement: 'static import java.nio.file.FileVisitResult. *;' – TuringTux