Dans .NET 4, il y a cette méthode Directory.EnumerateFiles() avec récursion qui semble pratique.
Cependant, si une exception se produit dans une récursion, comment puis-je continuer/récupérer à partir de cela et poursuivre l'énumération du reste des fichiers?Existe-t-il un moyen de récupérer à partir d'une exception dans Directory.EnumerateFiles?
try
{
var files = from file in Directory.EnumerateFiles("c:\\",
"*.*", SearchOption.AllDirectories)
select new
{
File = file
};
Console.WriteLine(files.Count().ToString());
}
catch (UnauthorizedAccessException uEx)
{
Console.WriteLine(uEx.Message);
}
catch (PathTooLongException ptlEx)
{
Console.WriteLine(ptlEx.Message);
}
Vous pourriez probablement écrire votre propre version en quelques lignes avec récupération d'erreur supplémentaire dont vous avez besoin. – leppie