SORU
14 EKİM 2008, Salı


En iyi şekilde Java dosyaları Listeleme, değiştirme Tarihine göre sıralanmış?

Bir dizindeki dosyaların bir listesini almak istiyorum, ama eski dosyaları ilk olarak sıralamak istiyorum. Benim çözüm Dosyası aramak oldu.listFiles ve resort sadece listesine Dosya dayalı.response-headers, ama eğer daha iyi bir yolu varsa merak ettim.

Edit: önerdiğin gibi Benim geçerli çözüm, isimsiz bir Karşılaştırıcı kullanmak için:

File[] files = directory.listFiles();

Arrays.sort(files, new Comparator<File>(){
    public int compare(File f1, File f2)
    {
        return Long.valueOf(f1.lastModified()).compareTo(f2.lastModified());
    } });

CEVAP
14 EKİM 2008, Salı


Çözüm için tek mantıklı yol olduğunu düşünüyorum. Dosyaların listesini almak için tek yol bu dosyaları iade sırası hakkında hiçbir garanti yapar File.listFiles() ve belgelere durumları kullanmaktır. Bu nedenle File.lastModified() kullanır ve Arrays.sort() bu, dosyaların bir dizi ile birlikte, geçen Comparator yazmak gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Alfredo Garcia

    Alfredo Garc

    25 Mayıs 2007
  • ibebrent

    ibebrent

    23 Temmuz 2007
  • Skittles Page

    Skittles Pag

    28 Mart 2011