.NET recherche efficacement les fichiers récemment modifiés dans un répertoire (pas besoin de boucler)
En programmation, rechercher des fichiers récemment modifiés dans un répertoire est une tâche courante. Bien qu'il soit possible de parcourir tous les fichiers et de comparer leurs horodatages de modification, cette approche est inefficace pour les grands répertoires. Cet article présente une méthode plus efficace qui ne nécessite pas de boucle.
En utilisant la méthode OrderByDescending
de LINQ, nous pouvons trier les fichiers par ordre décroissant en fonction de leur dernière heure d'écriture. L'extrait de code suivant illustre cette approche :
<code class="language-csharp">var directory = new DirectoryInfo("C:\MyDirectory"); var myFile = (from f in directory.GetFiles() orderby f.LastWriteTime descending select f).First();</code>
Alternativement, on peut utiliser la méthode d'extension GetFiles()
sur le IEnumerable<FileInfo>
obtenu par OrderByDescending
:
<code class="language-csharp">var myFile = directory.GetFiles() .OrderByDescending(f => f.LastWriteTime) .First();</code>
Des deux méthodes, la méthode First()
récupère le premier élément de la séquence triée, garantissant que nous obtenons le fichier le plus récemment modifié.
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!