是否可以做一个等价的'查找。 -ctime n'(Unix命令)在JDK7中?即根据上次更改的时间查找所有文件? 我看了一下新的FileVisitor/BasicFileAttributes/SimpleFileVisitor类,但我看不到它是如何完成的。是否有可能做一个'找到。 -ctime n'在JDK7中?
1
A
回答
5
以下为我工作(使用Files.walkFileTree和FileVisitor的):
FILETIME的ctime =(FILETIME)Files.getAttribute(路径, “UNIX:的ctime”);
1
您可以通过调用getCreationTime()
的文件属性对象来获取文件的创建时间。您可以使用Files.walkFileTree
和FileVisitor
执行目录树步行。把这些放在一起,你可以实现find . -ctime n
。
2
在JDK 7个论坛有discussion opened关于这个问题
它基本上是说:
从创建时间的描述:“如果 文件系统实现不 不支持时间戳指出 的创建文件的时间 那么此方法将返回一个 实现特定的默认值, 通常是上次修改时间或文件时间代表在时代 (1970-01-01T00:00:00Z)“。因此您期望观察到的行为。 上一次状态更改的时间为 ,如果您真的需要它,请尝试 Files.getAttribute(路径, “unix:ctime”)。
所以,你自己的答案似乎是正确的。
0
下面是创建时间的Javadoc说:
如果文件系统实现不支持时间戳来指示创建的文件,则该方法返回一个实现特定的默认值,通常最后改进释放时间时间或代表纪元的FileTime(1970-01-01T00:00:00Z)。
由于创建在Unix/Linux上不典型,所以该方法返回上次修改时间。
相关问题
- 1. BST,是否有可能在O(lg N)中找到下一个最低?
- 2. 是否有可能在android上使用java做到这一点?
- 3. 是否有可能找到另一个Android手机的位置?
- 4. 是否有可能做一个没有边框的wx.TextCtrl?
- 5. 是否有可能在mysql中选择从n到n + 10的记录范围?
- 6. 是否有可能找出一个Apache模块是否在PHP中加载
- 7. 是否有可能与Subversion/SVN做到这一点?
- 8. 是否有可能用bjam做一个out-source的构建?
- 9. 是否有可能做一个'脏更新'?
- 10. 是否有可能找到只有3个数字的下一个数字?
- 11. 是否有可能做模板与FXML
- 12. 是否有可能在一个类中有多个setContentView?
- 13. 是否有可能在一个表中有两个FILESTREAM列?
- 14. 是否有可能在一个listView项目中有两个TextView?
- 15. 是否有可能包含一个MetaPost文件到另一个?
- 16. 是否有可能在Windows的Vim中找到unicode字符串?
- 17. 是有可能做someValue中
- 18. 是否有可能做一个double has_many:通过在rails中关联?
- 19. 是否有可能在同一个查询中做不同选择?
- 20. 是否有可能一个DataGrid绑定到一个对象
- 21. 是否有可能找到某人是否查看网页源
- 22. 是否有可能有一个函数在另一个函数
- 23. 是否有可能计算一个分布,同时做一组通过在R
- 24. 是否有可能检测到Java中是否有类可用?
- 25. 任何表中都没有找到索引 - 是否有可能?
- 26. 是否有可能在activemq中找到是否创建了新主题
- 27. 是否有可能使一个子项在ListView中可点击
- 28. 是否有可能一个Parallel.ForEach
- 29. 是否有可能一个POST
- 30. 是否有可能有一个“主”的Django网站和N卫星网站
创建时间和上次更改的时间不一样。 我已经试过getCreationTime(),lastAccessTime()和lastModifiedTime()。他们都没有模仿 - 时间。 – Wayne 2011-05-20 22:07:52
作为另一个例子,如果我要通过getCreationTime()来排序,那么这将等同于'ls -lt',但我想要做的是'ls -ltc'排序。 – Wayne 2011-05-20 22:40:09
经过进一步调查,我认为getCreationTime()被打破。 看来,getCreationTime()和lastModifiedTime()返回相同的值。 – Wayne 2011-05-21 02:50:26