1. Общ преглед
JDK 7 представи възможността за получаване на датата на създаване на файл.
В този урок ще научим как можем да получим достъп до него чрез java.nio .
2. Files.getAttribute
Един от начините да получите датата на създаване на файл е да използвате метода Files.getAttribute с даден път :
try { FileTime creationTime = (FileTime) Files.getAttribute(path, "creationTime"); } catch (IOException ex) { // handle exception }
Видът на creationTime е FileTime , но поради факта, че се връща на метода на обекта, ние трябва да го хвърли .
FileTime съдържа стойността на датата като атрибут за клеймо за време. Например, той може да бъде преобразуван в Instant с метода toInstant () .
Ако файловата система не съхранява датата на създаване на файла, тогава методът ще върне null .
3. Files.readAttributes
Друг начин да получите дата на създаване е с Files.readAttributes, който за даден Път връща всички основни атрибути на файл наведнъж:
try { BasicFileAttributes attr = Files.readAttributes(path, BasicFileAttributes.class); FileTime fileTime = attr.creationTime(); } catch (IOException ex) { // handle exception }
Методът връща BasicFileAttributes, който можем да използваме, за да получим основните атрибути на даден файл. Методът createTime () връща датата на създаване на файла като FileTime .
Този път, ако файловата система не съхранява датата на създаване на файл, тогава методът ще върне последната модифицирана дата . Ако не бъде съхранена и последната модифицирана дата, тогава епохата (01.01.1970) ще бъде върната.
4. Заключение
В този урок научихме как да определим датата на създаване на файла в Java. По-конкретно научихме, че можем да го направим с Files.getAttribute и Files.readAttributes .
Както винаги, кодът за примери е достъпен в GitHub.