Avatar ·

Comment vérifier en C# si un fichier est utilisé par un autre processus ?

Bonjour à tous. Je suis débutant en C# et j'ai rencontré un problème lors du travail avec des fichiers. Je dois ouvrir des fichiers texte par programmation pour les lire, mais parfois ils sont déjà ouverts dans un autre programme (par exemple, dans le Bloc-notes ou Excel). Dans ces cas, mon application plante avec une exception de type `IOException` et le message "The process cannot access the file because it is being used by another process". Voici un exemple de mon code : ```csharp string filePath = @"C:\Data\report.txt"; try { string content = File.ReadAllText(filePath); Console.WriteLine(content); } catch (IOException ex) { Console.WriteLine($"Erreur : {ex.Message}"); } ``` Le problème est que j'attrape simplement l'exception, mais j'aimerais savoir à l'avance si le fichier est occupé, et soit attendre qu'il soit libéré, soit afficher un message compréhensible à l'utilisateur. J'ai essayé d'utiliser `File.Exists()`, mais cela n'aide pas — le fichier existe, mais il est verrouillé. Dites-moi, existe-t-il en C# un moyen standard de vérifier si un fichier est actuellement utilisé ?