Supprimer un dossier en Java

Dans ce tutoriel nous allons découvrir comment supprimer un dossier en Java.

Pour supprimer un dossier ou un répertoire, vous pouvez simplement utiliser File.delete(), mais le dossier doit être vide pour le supprimer.

Souvent, vous devrez peut-être effectuer une suppression récursive dans un dossier, ce qui signifie que tous ses sous-répertoires et fichiers doivent également être supprimés:
 
 

Exemple: Supprimer un dossier de manière récursive
import java.io.*;

public class Main
{	
    public static void delete(File f) throws IOException{
 
    	if(f.isDirectory()){
    	  //si le dossier est vide, supprimez-le
    	  if(f.list().length == 0){
    	    f.delete();
    	    System.out.println("Dossier est supprimé: "+ f.getAbsolutePath());
    	  }else{
    	    //lister le contenu du répertoire
    	    String files[] = f.list();
     
    	    for (String tmp : files) {
    	       File file = new File(f, tmp);
    	       //suppression récursive
    	       delete(file);
    	    }
    	    //vérifiez à nouveau le dossier, s'il est vide, supprimez-le
    	    if(f.list().length == 0){
    	    f.delete();
    	    System.out.println("Dossier est supprimé: "+ f.getAbsolutePath());
    	    }
    	    }
    	}else{
    	    //si il est un fichier, supprimez-le
    	    f.delete();
    	    System.out.println("Fichier est supprimé: " + f.getAbsolutePath());
    	}
    }

	public static void main(String[] args)
	{
		File dir = new File("C:\\test");
		try{
			delete(dir);
		}catch(IOException e){
			e.printStackTrace();
		}
	}
}

 
Sortie:
 

 

Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *