Ich nehme an, Du möchtest die extremen Uhrzeitzen der
Datei-Erstellung an einem bestimmten Tag.
Dir fehlen elementare Kenntnisse.
Du mußt zunächst ein VB-Lehrbuch durcharbeiten.
Wenn Du einen Parameter "Suchtag" bei einer Funktion einführst,
dann wird dieser Parameter im rufenden Programmteil belegt,
nicht durch die Abfrage eines Labels innerhalb der Routine.
Die Text-Eigenschaft eines Labels enthält eine Zeichenfolge (Typ: String).
Um Zeitpunkte zu bearbeiten, wird eine Variable des Typs "Date"
erstellt.
Eine direkte Zuweisung zwischen verschiedenen Datentypen ist nicht möglich
bzw. nicht sinnvoll. Es müssen passende Konvertierungsfunktionen eingesetzt
werden.
(VB erlaubt in machen Fällen "schlampiges" Programmieren. Schalte
"Option Strict On" ein, damit die IDE ggf. entsprechende Warnungen geben kann.)
Hier die Methode von oben inclusive Datumsfilter:
Public Shared Function GetFolderCreationTimeLimits3 _
(ByVal folder As String, _
ByVal criticalday As Date, _
ByRef mintime As Date, _
ByRef maxtime As Date) As Boolean
mintime = New Date(2100, 12, 31)
maxtime = New Date(1900, 1, 1)
If Not IO.Directory.Exists(folder) Then Return False
Try
For Each file As String In IO.Directory.GetFiles(folder)
Dim fi As New IO.FileInfo(file)
fi.Refresh() 'in VB-Doku empfohlen !!
Dim ct As Date = fi.CreationTime
If ct.Date = criticalday.Date Then
If mintime > ct Then mintime = ct
If maxtime < ct Then maxtime = ct
End If
Next file
Return True
Catch
Return False
End Try
End Function Anwendungsbeispiel:
lblCriticalday, lblMinTime, lblMaxTime sind Label-Controls.
Dim mintime, maxtime As Date
lblCriticalday.Text = "27.3.2015" 'Zeichenfolge in Label-Eigenschaft
Dim folder As String = "C:\daten" 'zu durchsuchender Ordner
Dim criticalday As Date = CDate(lblCriticalday.text) 'Umwandlung in Date
If Not GetFolderCreationTimeLimits3 _
(folder, criticalday, mintime, maxtime) Then
MsgBox("Fehler")
Else
lblMintime.Text = mintime.ToString("g") 'Formatierung von Date als String
lblmaxtime.Text = maxtime.ToString("g")
End If Die Anwendung von LINQ-Abfragen bringt meiner Kenntnis nach hier keine Vorteile.
Beitrag wurde zuletzt am 17.09.17 um 13:08:18 editiert. |