Bepaal de aanmaakdatum van het bestand in Java

1. Overzicht

JDK 7 introduceerde de mogelijkheid om de aanmaakdatum van een bestand op te halen.

In deze zelfstudie leren we hoe we er toegang toe kunnen krijgen via java.nio.

2. Files.getAttribute

Een manier om de aanmaakdatum van een bestand te krijgen, is door gebruik de methode Files.getAttributemet een gegeven Pad:

probeer {FileTime creationTime = (FileTime) Files.getAttribute (pad, "creationTime"); } catch (IOException ex) {// handle exception}

Het soort creationTime is FileTime, maar vanwege het feit dat de methode keert terug Voorwerp, we moeten het casten.

FileTime bevat de datumwaarde als een timestamp-kenmerk. Het kan bijvoorbeeld worden geconverteerd naar Onmiddellijk met de toInstant () methode.

Als het bestandssysteem de aanmaakdatum van het bestand niet opslaat, keert de methode terug nul.

3. Files.readAttributes

Een andere manier om een ​​aanmaakdatum te krijgen, is met Files.readAttributes die, voor een gegeven Pad, geeft alle basiskenmerken terug van een bestand tegelijk:

probeer {BasicFileAttributes attr = Files.readAttributes (pad, BasicFileAttributes.class); FileTime fileTime = attr.creationTime (); } catch (IOException ex) {// handle exception}

De methode retourneert een Basisbestandattributen, die we kunnen gebruiken om de basisattributen van een bestand te verkrijgen. De methode creationTime () geeft de aanmaakdatum van het bestand terug als FileTime.

Deze keer, als het bestandssysteem de datum van het maken van een bestand niet opslaat, dan de methode retourneert de laatste gewijzigde datum. Als de laatste gewijzigde datum niet ook wordt opgeslagen, wordt de epoche (01.01.1970) geretourneerd.

4. Conclusie

In deze zelfstudie hebben we geleerd hoe we de aanmaakdatum van het bestand in Java kunnen bepalen. Concreet hebben we geleerd dat we het kunnen doen Files.getAttribute en Files.readAttributes.

Zoals altijd is de code voor voorbeelden beschikbaar op GitHub.