Dart lastModified lastAccessed accessed modified changed

 

Dart Zugriff auf Files
Es kann vorkommen, das man wissen muss, wann eine Datei zum letzten Mal geändert wurde, wann der letzte Zugriff erfolgte.

Die entsprechenden Funktionen sind in der dart:io Library zu finden. 

Der erste Ansatz bietet die FileStat Klasse:

accessed

Wenn man diese Eigenschaft ausliest, erhält man das Datum, des letzten Zugriffs auf das entsprechende File System Objekt.

modified

Diese Eigenschaft informiert über das Datum der letzten Änderung an dem File System Objekt.

changed

Die letzte Eigenschaft aus der FileStat Klasse die noch in diese Gruppe gehört, informiert über die letzte Aenderung an den Daten oder Metadaten des File System Objekts. Wichtig: Auf Windows Maschinen erhalten wir hier das Erstellungsdatums des Files.

Den zweiten Ansatz bietet die File Klasse von Dart: 

lastAccessed(...) / lastAccessedSync(...)

Diese Funktion gibt es in einer synchronen und asynchronen Version. Sie gibt das Datum des letzten Zugriffs auf das File zurück. In der asynchronen Version ist der Rückgabewert ein Datum vom Typ Future<DateTime> .

lastModified(...) / lastModifiedSync(...)

Wie bei lastAccessed gibt es diese Funktion in synchroner und asynchroner Variante. Sie gibt das Datum der letzten Aenderung an dem File zurück. 

Was auffällt: Die File Klasse bietet keine changed Variante an.

Hier ein kurzer Beispiel Code:



Was ist nun der Unterschied ?


Wenn man die Dokumentation liest stellt man fest, das die FileStat Klasse auf der POSIX Funktion stat(...) basiert. POSIX selbst ist ein Satz Standard Betriebssystem Schnittstellen, die auf den UNIX Betriebssystemen basieren.
Gänzlich klar ist mir der Unterschied aber nicht. Liefern doch beide Varianten identische Ergebnisse auf meiner Windows Maschine. Bis bald.

Kommentare

Beliebte Posts aus diesem Blog

Material Design in Flutter Teil 2

Dart Basic: Listen Part 1

Listen in Dart (2021): Part 1 List.filled List.empty und List.add