Ich habe ein Tool geschrieben, um Protokolldateien innerhalb eines vom Benutzer des Tools angegebenen Zeitfensters zu sammeln. Bisher habe ich die Sammlung von Protokolldateien mithilfe der File.GetLastWriteTime-Methode auf die Protokolldateien gestützt und diese anhand der Ergebnisse dieser Vergleiche mit den Zeiten verglichen, die der Benutzer eingegeben und gesammelt hat. Hier ist ein kleiner Code-Schnipsel:File.GetLastWriteTime scheint "veraltet" -Wert zu liefern
DateTime logFileEnd = File.GetLastWriteTime(matchingActiveLogFile);
Allerdings bemerkte ich mein Werkzeug didnt einige Log-Dateien sammeln Ich dachte, es hätte tun sollen. Es scheint, dass die von dieser Methode zurückgegebene DateTime veraltet war (es gab eine neuere Protokollierung der Datei als der Wert dieser DateTime).
Als ich das 'Änderungsdatum' der fraglichen Datei anschaute, war es ebenfalls 'veraltet', es gab eine neuere Protokollierung der Datei als das 'Änderungsdatum'.
Wie kann ich einen genauen 'GetLastWriteTime' oder Date Modified Wert erhalten?
Was meinst du mit * DateTime zurückgegeben von dieser Methode war veraltet *? – V4Vendetta
Datum wird nach einer Weile nicht aktualisiert? Wenn Sie beispielsweise sehen, dass das geänderte Datum nicht mehr aktuell ist, warten Sie ca. 30 Sekunden und überprüfen Sie dann das Datum erneut. – Reniuz
Lesen Sie auch diesen Artikel: http://blogs.technet.com/b/asiasupp/archive/2010/12/14/file-date-modified-property-are-not-updating-while-modifying-a-file- ohne-closing-it.aspx könnte sein, dass Sie die gleichen – Reniuz