# File.listFiles nach Datum sortiert ausgeben



## Guest (13. Feb 2009)

Hallo!

Ich möchte gerne alle Dateien aus einem Ordner auslesen - allerdings nicht in der Vorgegebenen Reihenfolge, sondern nach dem Datum sortiert an dem die Dateien erstellt wurden. Weiss jemand wie man das machen kann?


----------



## ARadauer (13. Feb 2009)

ungefähr... ungetestet und da sollte man noch auf null überprüfen...

```
import java.io.File;
import java.util.Comparator;

public class FileDateComparator implements Comparator<File> {
   @Override
   public int compare(File o1, File o2) {
     if(o1.lastModified()==o2.lastModified())
        return 0;
     if(o1.lastModified()< o2.lastModified())
        return -1;
      return 1;
   }
}


import java.io.File;
import java.util.ArrayList;
import java.util.Collections;

public class Test {

   public static void main(String[] args) {
    
      
    File[] files = new File("c:/test.txt").listFiles();
    ArrayList<File> filesList = new ArrayList<File>();
    for(File f: files)
       filesList.add(f);
    
    Collections.sort(filesList, new FileDateComparator());

   } 
   
}
```


----------

