gpt4 book ai didi

Java:aix中的文件lastmodified itimestamp

转载 作者:行者123 更新时间:2023-12-01 05:08:58 25 4
gpt4 key购买 nike

我想在java中将目录中的文件按照最早的顺序排序,以对其中的文件执行一些操作(先进先出原则)。为此,我在每个飞行对象上使用lastmodified方法,然后通过比较器对它们进行比较,这给了我如下所示的排序列表

    public static ArrayList<File> sortListAscending(ArrayList<File> list) {
Collections.sort(list, new Comparator<File>() {
public int compare(final File o1, final File o2) {
return new Long(((File) o1).lastModified()).compareTo(new Long(
((File) o2).lastModified()));
}
});
return list;
}

当我在 Windows 上运行此命令时,我会返回一个 13 位时间戳,而在 unix 中时间戳不可达毫秒。因此,对于在该一秒时间范围内进入目录的文件,上述方法在 unix 中失败。

请建议一些解决方法?

最佳答案

在我的 Ubuntu 机器上,时间戳以 13 位返回,即。毫秒。你能检查一下你的 Linux 机器上的系统时钟是否设置正确吗?

因此您可以在几秒钟内进行比较。

long lastModified1 = (o1.lastModified()/1000)
long lastModified2 = (o2.lastModified()/1000)

return Long.valueOf(lastModified1).compareTo(lastModified2);

关于Java:aix中的文件lastmodified itimestamp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12315331/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com