Avatar ·

Comment supprimer tous les fichiers et dossiers dans un répertoire en C# ?

Bonjour à tous ! Je suis un développeur C# débutant et j'ai rencontré un problème. Je dois écrire une fonction qui vide un dossier de tous ses fichiers et sous-dossiers. J'ai essayé plusieurs méthodes, mais à chaque fois quelque chose ne va pas. Voici mon code : ```csharp string path = @"C:\Temp\MyFolder"; if (Directory.Exists(path)) { Directory.Delete(path, true); Directory.CreateDirectory(path); } ``` Le problème est que lorsque j'essaie de supprimer un dossier avec des fichiers utilisés par un autre processus, une exception IOException est levée. Et si j'essaie de supprimer les fichiers un par un via File.Delete, les dossiers restent et je dois les supprimer récursivement, mais je n'arrive pas à gérer l'imbrication. J'ai aussi essayé cette variante : ```csharp foreach (string file in Directory.GetFiles(path)) { File.Delete(file); } foreach (string dir in Directory.GetDirectories(path)) { Directory.Delete(dir, true); } ``` Mais si le dossier contient des sous-dossiers avec des fichiers, Directory.GetDirectories ne les retourne pas,