我正在为我们的软件编写清除功能,删除一个月内未使用过的所有图像文件。要做到这一点,我正在检查两件事:
查询比文件检查慢得多。因此,我希望能够在第一次检查失败的任何文件上重置上次修改日期,但是传递第二次,以便(例如)一个古老但经常使用的文件列表不会逐渐增加处理加载管理系统。
有没有办法在不使用粗糙的东西(甚至可能更慢)的情况下做到这一点,比如将每个文件重命名为临时标签,然后自己?
答案 0 :(得分:5)
正如Nik所说,setLastModified()
类上的File
方法可能并不总是有效,具体取决于您在Android文件系统中的位置。如果在SD卡上,则某些设备将从该呼叫返回false,因此不会更改日期。
这里有更多细节:
http://code.google.com/p/android/issues/detail?id=1992
http://code.google.com/p/android/issues/detail?id=1699
此处还有其他一些stackoverflow线程:
file.lastModified() is never what was set with file.setLastModified()
答案 1 :(得分:1)
setLastModified()
是任何Java File
对象的标准方法,可用于更新此值。