Maison >développement back-end >C++ >Comment supprimer efficacement des fichiers et des dossiers d'un répertoire en C# ?
Dans de nombreux scénarios, les développeurs rencontrent le besoin de supprimer tous les fichiers et dossiers d'un répertoire tout en préservant le répertoire racine . C# offre une méthode simple pour accomplir cette tâche.
Pour commencer, instanciez un objet DirectoryInfo pointant vers le répertoire cible :
System.IO.DirectoryInfo di = new DirectoryInfo("YourPath");
Maintenant, parcourez les fichiers du répertoire et supprimez chacun un :
foreach (FileInfo file in di.GetFiles()) { file.Delete(); }
Ensuite, parcourez les répertoires du répertoire et supprimez chacun d'eux récursive :
foreach (DirectoryInfo dir in di.GetDirectories()) { dir.Delete(true); }
Cette approche supprime efficacement tous les fichiers et dossiers du répertoire, ne laissant intact que le répertoire racine.
Pour une efficacité optimale, envisagez d'utiliser EnumerateFiles() et EnumerateDirectories() à la place de GetFiles() et GetDirectories(). Ces méthodes permettent une énumération incrémentielle, évitant ainsi la surcharge liée au chargement de l'intégralité de la collection en mémoire. Le code révisé en utilisant ces méthodes :
foreach (FileInfo file in di.EnumerateFiles()) { file.Delete(); } foreach (DirectoryInfo dir in di.EnumerateDirectories()) { dir.Delete(true); }
En employant cette approche, vous pouvez supprimer efficacement tous les fichiers et dossiers d'un répertoire tout en préservant le répertoire racine.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!