我的服务器中有一个包含 10,000 张图像的文件夹,其中可以存在从当前日期到最近 2 个月的图像。
是否有可能我只能拾取最新的 10 个文件而不会出现大的性能问题?
Java:如何根据文件创建日期从文件夹中选择最新的 10 个文件?
我的服务器中有一个包含 10,000 张图像的文件夹,其中可以存在从当前日期到最近 2 个月的图像。
是否有可能我只能拾取最新的 10 个文件而不会出现大的性能问题?
Java:如何根据文件创建日期从文件夹中选择最新的 10 个文件?
我会说完全一样 Nitin 但我知道你不希望内存中的 100 000 张图像
是否可以修改文件名以包含其创建日期?例如图片765.jpeg -> 20120418_picture765.jpeg
如果是,请使用 FileFilter 仅检索有限数量的文件,例如:今天的文件 将它们存储在 ArrayList 中 您没有 10 张图像吗?继续寻找昨天,然后是前一天,...
另一种方法:使用两个文件夹 一个用于活动图片 第二个用于存档 由您决定何时将图片从一个目录移动到另一个目录
希望能帮助到你
创建一个File
指向该目录的对象。用于listFiles()
获取目录中的文件数组。排序它lastModified()
,你得到你需要的。
你可以看到这个参考
获取所有文件,按日期对它们进行排序,然后取最后 10 个元素。