this must be easy, but I can't see how to do it. I can list the files I want (see code below) but they are listed in name order.
Obviously I could sort them manually afterwards, but that sounds like hard work, any ideas anyone
Thanks, Ade
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dim dir As DirectoryInfo = New DirectoryInfo(m_strDirectory & "\Exports")
Dim myF As FileInfo
Debug.Write(vbCrLf & "FileName CreationTime AccessTime WriteTime" & vbCrLf)
For Each myF In dir.GetFiles("*.REQ")
Debug.Write(myF.Name & " " & myF.CreationTime.ToString & " " & myF.LastAccessTime.ToString & " " & myF.LastWriteTime & vbCrLf)
Next
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

list files sorted by date
Pablo Espada
jockofett
At first you must create comparer for comparing files by date.
Public Class FileDateComparer
Implements IComparer
Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements System.Collections.IComparer.Compare
Dim xFile, yFile As IO.FileInfo
xFile = DirectCast(x, IO.FileInfo)
yFile = DirectCast(y, IO.FileInfo)
Return Date.Compare(xFile.LastWriteTime, yFile.LastWriteTime)
End Function
End Class
Then you shoul rewrite your code like this
Dim dir As DirectoryInfo = New DirectoryInfo(m_strDirectory & "\Exports")
Dim myF As FileInfo
Debug.Write(vbCrLf & "FileName CreationTime AccessTime WriteTime" & vbCrLf)
Dim MyFiles() As IO.FileInfo = dir.GetFiles("*.REQ")
Array.Sort(MyFiles, New FileDateComparer())
For Each myF In MyFiles
Debug.Write(myF.Name & " " & myF.CreationTime.ToString & " " & myF.LastAccessTime.ToString & " " & myF.LastWriteTime & vbCrLf)
Next
This sorts files by LastWriteTime