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

  • Andrew_Huang

    Andrew_Huang

    10 ŞUBAT 2006
  • picster

    picster

    20 NİSAN 2006
  • YAN TV

    YAN TV

    20 EKİM 2011