SORU
9 EYLÜL 2008, Salı


Dizin Sıralama.()GetFiles

System.IO.Directory.GetFiles() string[] döndürür. Varsayılan sıralama verilen değerler için nedir? Ne kadar geçerli bir kültür etkisi nedir? adını varsayarak, ama ben Oluşturulma tarihi gibi bir şey bunu değiştiremez misin?

Güncelleme:MSDN sıralama düzeni için garantili olmadığını belirtiyor .3.5, ama sayfanın 2.0 sürümü herhangi bir şey yazmıyor ve ne sayfa oluşturma gibi şeyler tarafından sıralama yardımcı olacak veya değişiklik Net bir zaman. Bu Bilgi dizinin (sadece dizeleri içerir) sonra kaybolur. Olur ama sürekli tahminen ne zaman dosya sistemi erişim anlamına gelen her dosya için onay verecek bir karşılaştırıcısı inşa edebilirdim .() GetFiles yöntem zaten bu. Çok verimsiz görünüyor.

CEVAP
9 EYLÜL 2008, Salı


Eğer CreationTime gibi dosyaların özelliklerini ilgileniyorsanız eğer, o zaman daha mantıklı Sistemi kullanmak için yapar.IO.Directoryınfo.() GetFileSystemİnfos. O zaman bu Sistem uzantısı yöntemlerden birini kullanarak sıralayabilirsiniz.Seri, örneğin:

DirectoryInfo di = new DirectoryInfo("C:\\");
FileSystemInfo[] files = di.GetFileSystemInfos();
var orderedFiles = files.OrderBy(f => f.CreationTime);

Edit - kusura bakma, fark etmedim .NET 2.0 etiket bu yüzden kontrol ETMENİZ sıralama görmezden. Öneri Sistemi kullanmak için.IO.Directoryınfo.() GetFileSystemİnfos yine de tutar.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Julian Smith

    Julian Smith

    31 EKİM 2006
  • LounaTutorials

    LounaTutoria

    10 EYLÜL 2009
  • TSE

    TSE

    12 Kasım 2012