我尝试使用下面的代码来获取Linux系统中文件的创建时间。但它并没有给出创建时间,而是给出最后修改的时间。
请帮助我获取Java for Linux文件系统中的文件创建时间。

File f=new File("/var/fileName.csv");
Path p = f.toPath();
BasicFileAttributes attr = Files.readAttributes(p, BasicFileAttributes.class);

System.out.println("creationTime: " + attr.creationTime().toInstant().atZone(ZoneId.systemDefault()));

提前谢谢!啊!

最佳答案

阅读Javadoc显示以下内容:
文件时间创建时间()
返回创建时间。创建时间是创建文件的时间。
如果文件系统实现不支持时间戳来指示创建文件的时间,则此方法返回特定于实现的默认值,通常是上次修改的时间或表示epoch的file time(1970-01-01t00:00:00z)。
因此,这似乎是您所在的文件系统和相应的文件系统实现的问题。

09-11 02:35
查看更多