2010-10-20 26 views
1

Comment obtenir le chemin du fichier le plus récent ou le plus récent basé sur l'heure de création (par exemple 'test.xml) situé dans plusieurs sous-répertoires d'un répertoire principal.Chemin de l'heure de création récente d'un seul fichier utilisant C#

+0

Qu'entendez-vous par temps de création récent? Il n'y a qu'une seule fois où un fichier a été créé ... –

Répondre

4

Vous pouvez utiliser LINQ:

Directory.EnumerateFiles(path, "*", SearchOption.AllDirectories) 
     .OrderBy(File.GetLastWriteTime) 
     .Last() 

Si vous ne l'utilisez .Net 4.0, changement qui à

Directory.GetFiles(path, "*", SearchOption.AllDirectories) 
     .OrderBy(p => File.GetLastWriteTime(p)) 
     .Last() 

Ceci est un peu plus lent, mais fonctionnera en .Net 3.5.

+0

Ce n'est pas une solution correcte. Il vous donne le temps maximum, mais pas le chemin de fichier comme demandé. – TToni

+0

@TToni: Vous avez raison; fixé. Je vous remercie. Ce serait plus rapide avec une boucle ou 'Aggregate' au lieu d'une sorte, mais je suis trop paresseux pour ça. – SLaks

+0

Merci beaucoup. Super! – venkat