Maison > Article > développement back-end > Programme C# pour supprimer les répertoires vides et non vides
Sur un ordinateur, nous pouvons stocker des fichiers dans des répertoires, également appelés dossiers. Les répertoires contiennent également des raccourcis vers d'autres répertoires et fichiers. Ici, nous discuterons du programme C# pour supprimer les répertoires vides et non vides. Une classe statique nommée Directory fournit des méthodes statiques pour travailler avec des répertoires. Les objets DirectoryInfo fournissent des informations détaillées sur un répertoire spécifique.
Maintenant que nous avons un répertoire (vide ou non) il faut le supprimer. Un répertoire vide signifie qu'aucun fichier ou sous-répertoire n'existe dans le répertoire. Un répertoire peut être considéré comme un regroupement de fichiers et de sous-répertoires ; il peut contenir ou non des données. Un répertoire contenant des fichiers ou d'autres répertoires est appelé répertoire non vide. Grâce à la méthode Delete() de la classe Directory, nous pouvons supprimer un répertoire. Cette méthode a deux méthodes de surcharge -
supprimer (chaîne)
supprimer(chaîne,booléen)
Cette méthode est incluse dans la classe Directory. Cette technique est utilisée pour supprimer les répertoires vides. Cette méthode supprime un répertoire d'une adresse ou d'un emplacement défini.
public static void Delete (string DirLocation);
Où DirLocation est l'adresse du répertoire qui a été fourni et que nous souhaitons supprimer, le type de ce paramètre est une chaîne. Désormais, certaines erreurs peuvent survenir après l'exécution de cette commande.
Lorsque le fichier avec le même nom et la même adresse spécifiés par DirLocation existe déjà, une exception IO est levée. Alternativement, le sous-dossier est en lecture seule. Les exceptions d'accès non autorisé sont un autre type d'erreur qui peut survenir. Cette exception est levée si l'appelant ne dispose pas des autorisations requises. Argument Null Exception Cette erreur est levée lorsque DirLocation est null. L'exception de chemin trop long est une autre erreur qui peut se produire lorsque le DirLocation, le nom de fichier ou les deux donnés dépassent la longueur maximale définie par le système. Si le DirLocation est manquant ou introuvable, une exception « Répertoire introuvable » se produit. Soit l'itinéraire indiqué est erroné.
L'algorithme ci-dessous donnera étape par étape le processus d'écriture d'un programme pour supprimer un répertoire. Dans cet algorithme, nous utiliserons la méthode Delete(String).
Par exemple, nous considérerons un répertoire vide appelé "csk". Maintenant, nous allons utiliser la méthode Delete(String) et supprimer le répertoire "csk".
Étape 1 - Nous utiliserons la méthode Directory.delete pour supprimer un répertoire en passant l'adresse du répertoire.
Étape 2 − La suppression du répertoire dans lequel nous avons écrit a été complétée à l'aide de Console.Writeline().
// A C# program which goes on given address and deletes the empty directory // Using Delete(string) method using System; using System.IO; class TutPoint { static void Main(){ // Deleting the empty directory by using the Delete() method Directory.Delete("D:/csk"); Console.WriteLine("Deleted"); } }
Deleted
Cette méthode est également incluse dans la classe Directory. L'utilisation de cette technique supprimera le répertoire spécifié et tous les sous-répertoires et fichiers de ce répertoire, si spécifié.
public static void Delete (string DirLocation, bool recursive);
Cette technique est utilisée pour supprimer un répertoire spécifié et tous les sous-répertoires et fichiers qu'il contient. Désormais, certaines erreurs peuvent survenir après l'exécution de cette commande.
Lorsque le fichier avec le même nom et la même adresse spécifiés par DirLocation existe déjà, une exception IO est levée. Alternativement, le sous-dossier est en lecture seule. Les exceptions d'accès non autorisé sont un autre type d'erreur qui peut survenir. Cette exception est levée si l'appelant ne dispose pas des autorisations requises. Argument Null Exception Cette erreur est levée lorsque DirLocation est null.
L'exception de chemin trop long est une autre erreur qui se produit lorsque le DirLocation, le nom de fichier ou les deux donnés dépassent la longueur maximale définie dans le système. Si le DirLocation est manquant ou introuvable, une exception « Répertoire introuvable » se produit. Soit l'itinéraire indiqué est erroné.
L'algorithme ci-dessous donnera étape par étape le processus d'écriture d'un programme pour supprimer un répertoire. Dans cet algorithme, nous utiliserons la méthode Delete(String, Boolean).
Par exemple, nous considérerons qu'il existe un répertoire non vide nommé "csk" dans le lecteur D, qui contient un fichier nommé "msd". Maintenant, nous allons utiliser la méthode Delete(String, Boolean) et supprimer le répertoire "csk".
Étape 1 − Nous utiliserons la méthode Directory.delete(String, Boolean) pour supprimer un répertoire en passant l'adresse du répertoire.
Étape 2 − Ici, true est la valeur booléenne transmise lors de la vérification si le sous-répertoire existe.
Étape 3 − La suppression du répertoire dans lequel nous avons écrit est complétée en utilisant Console.Writeline().
// A C# program which goes on given address and deletes the non empty directory // Using Delete(string) method using System; using System.IO; class TutPoint { static void Main() { // Deleting the non-empty directory by using the Delete() method Directory.Delete("D:/csk",true); Console.WriteLine("Deleted"); } }
Deleted
Dans l'algorithme, nous utilisons une seule fonction de la classe Directory. Ici, la complexité temporelle de Delete(String) sera O(1) et la complexité temporelle de Delete(String, Boolean) sera également O(1).
Nous avons longuement discuté des programmes C# pour supprimer les répertoires vides et non vides. Tout d’abord, nous avons discuté de la définition des répertoires et de leurs utilisations. Nous avons ensuite discuté de la suppression de répertoires de deux manières différentes. Enfin, nous avons vu l'algorithme et l'exemple de code. Nous espérons que cet article vous a aidé à améliorer vos connaissances sur C#.
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!