Vérification robuste d'accès aux fichiers en C #
Gestion efficace de l'accès au fichier en C # nécessite de vérifier la disponibilité du fichier pour empêcher les erreurs d'exécution comme "Fichier utilisé". Bien que la gestion des exceptions soit courante, une approche plus proactive améliore la clarté du code et la robustesse.
Une vérification de disponibilité des fichiers plus fiable
Cette méthode utilise FileAccess
et FileShare
pour vérifier de manière préventive les verrous des fichiers:
protected virtual bool IsFileLocked(FileInfo file) { try { using (FileStream stream = file.Open(FileMode.Open, FileAccess.Read, FileShare.None)) { stream.Close(); } return false; // File is accessible } catch (IOException) { return true; // File is locked or unavailable } }
Ce code tente d'ouvrir le fichier en mode lecture avec un accès exclusif (FileShare.None
). Une opération réussie indique que le fichier est disponible. Un IOException
signifie que le fichier est verrouillé par un autre processus ou inaccessible.
Considérations importantes:
FileAccess
à FileAccess.Write
pour les vérifications d'accès en écriture. try-catch
gère gracieusement le potentiel IOExceptions
. Cette approche améliorée fournit un moyen plus prévisible et moins sujet aux erreurs de vérifier la disponibilité des fichiers avant de tenter l'accès.
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!