Feedback

VB - Dateien nach Datum sortieren

Veröffentlicht von am 09.09.2008
(3 Bewertungen)
Diese Funktion kann Dateien die mit kompletten Pfad in einem Arry angegeben werden nach einen von 3 verschiedenen Zeitangaben einer Datei sortiert werden. Die Zeiten LastAccessTime, LastWriteTime und CreationTime stehen zur Verfügung. Das Array kann nach einen von diesen 3 Zeiten sortiert werden.
GFU-Schulungen  [Anzeige]

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

ASP.NET 2.0 und 3.5

Dieser Kurs vermittelt Ihnen alle Erweiterungen von Microsoft ASP.NET 2.0. Zu diesen zählen u. a. Data Bindung, Master Pages, und Security.

Public Enum EnumFileAttributes As Integer
    LastAccessTime = 0
    LastWriteTime = 1
    CreationTime = 2
End Enum

''' <summary>
''' Diese Funktion kann Dateien die mit kompletten Pfad in einem Arry angegeben werden
''' nach einen von 3 verschiedenen Zeitangaben einer Datei sortiert werden.
''' Die Zeiten LastAccessTime, LastWriteTime und CreationTime stehen zur Verfügung.
''' Das Array kann nach einen von diesen 3 Zeiten sortiert werden.
''' </summary>
''' <param name="FileArray">Das zu sortierende Array mit den komlpetten Pfaden der zu sortierenden Dateien</param>
''' <param name="TimeField">Gibt die Zeit an nach der Sortiert werden soll</param>
''' <param name="DoReverse">Gibt an ob das Array nach der sortierung umgekehrt werden soll (Neue Dateien zuerst)</param>
Public Sub SortFilesByDate(ByRef FileArray() As String, ByVal TimeField As EnumFileAttributes, Optional ByVal DoReverse As Boolean = False)
    Dim Untouched As Boolean
    Dim ArrLen As Long = FileArray.Length - 1
    Dim TmpValue As String

    Select Case TimeField
        Case EnumFileAttributes.CreationTime
            Do
                Untouched = True
                For i As Long = 0 To ArrLen - 1
                    If File.GetCreationTime(FileArray(i)) > File.GetCreationTime(FileArray(i + 1)) Then
                        TmpValue = FileArray(i)
                        FileArray(i) = FileArray(i + 1)
                        FileArray(i + 1) = TmpValue
                        Untouched = False
                    End If
                Next i
            Loop Until Untouched
        Case EnumFileAttributes.LastAccessTime
            Do
                Untouched = True
                For i As Long = 0 To ArrLen - 1
                    If File.GetLastAccessTime(FileArray(i)) > File.GetLastAccessTime(FileArray(i + 1)) Then
                        TmpValue = FileArray(i)
                        FileArray(i) = FileArray(i + 1)
                        FileArray(i + 1) = TmpValue
                        Untouched = False
                    End If
                Next i
            Loop Until Untouched
        Case EnumFileAttributes.LastWriteTime
            Do
                Untouched = True
                For i As Long = 0 To ArrLen - 1
                    If File.GetLastWriteTime(FileArray(i)) > File.GetLastWriteTime(FileArray(i + 1)) Then
                        TmpValue = FileArray(i)
                        FileArray(i) = FileArray(i + 1)
                        FileArray(i + 1) = TmpValue
                        Untouched = False
                    End If
                Next i
            Loop Until Untouched
    End Select

    If DoReverse = True Then Array.Reverse(FileArray)
End Sub
Abgelegt unter Sortieren, Datei, Array, BubbleSort.

1 Kommentare zum Snippet

Volker Steitz schrieb am 09.09.2008:
Sehr praktisch
 

Logge dich ein, um hier zu kommentieren!