Neil Smith

[blog]code til ur fingers bleed
posts - 31, comments - 36, trackbacks - 6

My Links

News



Archives

Directory.GetFiles() in Modified Date/Time Order

I’ve been forced in to using vb.net for a windows service project which scans a folder of xml files, they need to be processed in order of the files modified date & time.  Directory.GetFiles() returns an array of filenames in alphabetic order, I could find precious little information on the net so I thought I’d share what I came up with :-

 

Imports System.IO

Public Class clsCompareFileInfo

    Implements IComparer

    Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements IComparer.Compare

        Dim File1 As FileInfo

        Dim File2 As FileInfo

 

        File1 = DirectCast(x, FileInfo)

        File2 = DirectCast(y, FileInfo)

 

        Compare = DateTime.Compare(File1.LastWriteTime, File2.LastWriteTime)

    End Function

End Class

 

Then to use it…

 

Dim dirinfo As DirectoryInfo

Dim allFiles() As FileInfo

 

dirinfo = New DirectoryInfo(sSelPath)

allFiles = dirinfo.GetFiles("*.xml")

Array.Sort(allFiles, New clsCompareFileInfo)

For Each fl As FileInfo In allFiles

    MessageBox(fl.FullName.ToString())

Next

 

To give credit where it’s really due I found the solution in c# at http://www.shanebauer.com/Weblog/PermaLink,guid,b9cd286d-e147-4a25-aa49-bde888a11433.aspx. I just converted the source from c# to vb.net.

Print | posted on Thursday, August 17, 2006 11:35 AM |

Feedback

Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thank you, really needed this :)

"I could find precious little information on the net"

Had exact the same problem, till i found your post.

Thanks again!
8/30/2006 3:59 PM | Lennard Fonteijn
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Perfect..
/Johan, Sweden
2/7/2007 11:30 AM | Johan
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

many many thanks... this is exactly what i wanted.. should had post more in other forums.. cheers =D
2/26/2007 7:55 AM | Yk
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks a lot, just what I was looking for.
7/23/2007 1:26 PM | HImanshu
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks for sharing ^_^
8/6/2007 10:17 AM | Eliseu Martiho
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

thanks a lot !
saved me a few hours of search !
8/9/2007 6:41 AM | Elena
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thank you for sharing, exactly what i was looking for!!.
8/29/2007 3:49 PM | Alex
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks for posting and saving me time!
4/5/2008 2:54 PM | Robert
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks a lot
4/24/2008 8:20 PM | shree
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Merci beaucoup !
4/29/2008 9:13 PM | Cyril
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks! you save my time!!!
7/2/2008 2:49 PM | Cyrus
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

these struggle if more than one file is created per second, updated post here http://geekswithblogs.net/ntsmith/archive/2008/07/10/123732.aspx
7/10/2008 9:21 PM | nts
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

thank you
11/15/2008 7:05 PM | ik2008
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Sublime :)
12/2/2008 2:28 AM | Kevin Crampton
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

This is what exactly I was looking for. Thanks a lot.
12/4/2008 9:47 PM | Swapna
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

thanks a lot
2/5/2009 2:54 AM | Orly
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks alot for sharing such a good stuff.
2/15/2009 10:01 PM | Sohrab
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Many many thanks this is what exactly i want....
2/16/2009 5:52 AM | KETAN DESHPANDE
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Can anyone please provide me the same vb.net code in c sharp. i am new in c sharp.

Thanks in advance.
Gaurav.
2/25/2009 4:14 AM | Gaurav Gulati
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Hey Thanks a lot...
4/13/2009 2:57 AM | Batul
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks a lot for this good code
4/13/2009 11:59 PM | Jitu
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

perfect example. Thanks!!
4/30/2009 3:26 AM | Lamar M
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

strategy pattern eh? was looking for exactly this :) thanks...
6/2/2009 8:25 PM | dude
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

hi
I need get only the files of last one hours.

For example;
Dir.getfile("*.txt", file.hour < now(-1))

Claudinei
6/25/2009 8:56 AM | Claudinei
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

cool thx a lot guys
12/10/2009 2:45 AM | Mark
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

very nice ... with a little tweaking it can do many things. nice post
1/28/2010 1:29 AM | 3 r ! c |<
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

thank you works fine !
2/23/2010 1:25 PM | rudi
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Absolutely perfect solutions. Thanks.
5/11/2010 1:17 PM | BUXjr
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Thanks. It works perfect and helped me out great
6/2/2010 6:55 AM | Yogesh Shah
Gravatar

# re: Directory.GetFiles() in Modified Date/Time Order

Perfect example for sort with customization.... Thanks a lot
8/26/2010 4:24 AM | Haneef
Post A Comment
Title:
Name:
Email:
Website:
Comment:
Verification:
 
 

Powered by: