我的代码就像
String path = "/home/user/tmp/file1";
Path p = FileSystems.getDefault().getPath(path);
PosixFileAttributes attrs = Files.readAttributes(p, PosixFileAttributes.class);
System.out.println("Last Modified Time: "+attrs.lastModifiedTime());
System.out.println("Last Access Time: "+attrs.lastAccessTime());
lastModifiedTime()和lastAccessTime()返回的时间与正确时间相差4小时。
输出是 最后修改时间: 2014-06-25T12:50:31Z 最后访问时间:2014-06-25T18:26:07Z
stat file1 产生: 访问时间:2014-06-25 14:26:07.870281008 -0400 修改: 2014-06-25 08:50:31.922861913 -0400 更改: 2014-06-25 08:50:31.922861913 -0400
谁能帮帮我?
最佳答案
像这样的时刻
2014-06-25T12:50:31Z
采用 UTC(即末尾的 Z)格式,因此可能会根据您所在的时区而有所偏差。
关于java PosixFileAttributes 返回错误的 atime 和 mtime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24416947/