views:

36

answers:

3
File dir = new File("."); 
FileFilter fileFilter = new WildcardFileFilter("sample*.java"); 
File[] files = dir.listFiles(fileFilter); 
for (int i = 0; i < files.length; i++) { 
   System.out.println(files[i]); 
} 

for example:

If I have the files shown below in a directory:

 FILE NAME                     DATE CREATED/MODIFIED

properties.txt                    10/08/2010 06:19
sublime.dll                       10/08/2010 08:01
css_stlyle.css                    10/08/2010 10:00
BMW_tags.php                      10/08/2010 19:03
cars.properties                   10/08/2010 04:37
+1  A: 

How about this C# linq approach:

var query = Directory.GetFiles("D:\\", "*.txt", SearchOption.AllDirectories)
                     .Select(name => new FileInfo(name));

var orderedList = query.OrderBy(fileInfo => fileInfo.CreationTime).ToList();
Oliver
A: 

In Python, if I understand you correctly:

import os
sorted( os.listdir( "." ), key = lambda file: os.stat( file )[ 8 ] )
katrielalex
A: 

Because your Example was in java, Use a Comparator

File dir = new File("."); 
        File[] files = dir.listFiles(); 

        Arrays.sort(files, new Comparator<File>() {

            public int compare(File arg0, File arg1) {
                return (arg0.lastModified() < arg1.lastModified())? -1 : 1;
            }
        });
        for (int i = 0; i < files.length; i++) { 
           System.out.println(files[i] + " : " + files[i].lastModified()); 
        } 
st0le