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

  • Ampisound

    Ampisound

    12 Kasım 2006
  • CrazyMan

    CrazyMan

    14 Mayıs 2008
  • Jordie Jordan

    Jordie Jorda

    27 Ocak 2008