stat
nicht geben Sie die Erstellungszeit einreichen. Sie erhalten die Zeit zum Ändern der Datei, die Zugriffszeit und die Zeit zum Ändern der Inode.
Sie können diese Informationen sicher zwischenspeichern, wenn Sie wollen, vorbehaltlich der normalen Probleme des Caching, das heißt, Sie laufen das Risiko von veralteten Daten im Cache, wenn die Datei geändert wird und Sie nicht noch einmal schnell genug überprüfen .
Wenn Ihr Programm single-threaded ist und Sie nur mit einer Datei arbeiten, können Sie zum Beispiel eine static
Variable verwenden. Andernfalls möchten Sie möglicherweise ein Objekt (im OO-Sinne) erstellen, das den zwischengespeicherten Zeitstempel und eine TTL für den zwischengespeicherten Wert als internen Status speichert und Methoden zum Abfragen und/oder Aktualisieren des Werts bereitstellt.
Was meinen Sie mit "Cache den letzten Zeitstempel"? Was immer Sie cachen möchten, warum speichern Sie es nicht einfach in einer Variablen? –
Ich möchte es nur zwischenspeichern, so dass ich nicht auf jede Log-Nachricht treffen muss. Auch das Speichern in einer Variablen wäre wie String date1 // eine Variable, die als global deklariert wurde oder etwas Ähnliches, was ich getan habe: - stat ("C: /repos/trunk/logging/test.log", & attrib); Uhr = gmtime (& (attrib.st_ctime)); – gandhigcpp
Nun, Sie * könnte * eine globale verwenden, aber Sie sollten versuchen, einen Weg zu finden, um es zu vermeiden. Aber was auch immer Sie tun, es beinhaltet das Speichern der Informationen * irgendwo *. –