I need not last modification time and not last file accessed time, but file creation time. I have not found information about this. Maybe some libs?
Path p = Paths.get(f.getAbsoluteFile().toURI());
BasicFileAttributes view = null;
try {
    view = Files.getFileAttributeView(p,
                            BasicFileAttributeView.class).readAttributes();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
FileTime creationTime = view.creationTime();
In this code creation time is not valid and return today date.
Operation System: Windows 7 Java: SE-1.7
How to get the creation date of a file in Java, using BasicFileAttributes class, this is an example:
   Path path = Paths.get("C:\\Users\\jorgesys\\workspaceJava\\myfile.txt");
    BasicFileAttributes attr;
    try {
    attr = Files.readAttributes(path, BasicFileAttributes.class);
    System.out.println("Creation date: " + attr.creationTime());
    } catch (IOException e) {
    System.out.println("oops error! " + e.getMessage());
    }
                        As yshavit said, not all operating systems record the date created. However, you should be able to use java.nio.file to determine this information on operating systems that do have this functionality - see the documentation for files.getAttribute - note that BasicFileAttributeView has a field for creationTime.
You can use FileSystems.getDefault(); to determine what FileAttributeViews are supported on the current operating system.
Files.getAttribute(path, "basic:createdAt"); will return a FileTime object with the date the file was created on a system that supports BasicFileAttributeView. You'll have to convert it to a java.util.Date object, but I'll let you figure that out on your own.
getAttribute() BasicFileAttributeView readAttributes()
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With