gpt4 book ai didi

java - Java listFiles() 默认按什么顺序读取目录中的文件?

转载 作者:行者123 更新时间:2023-12-02 18:23:21 28 4
gpt4 key购买 nike

我编写了以下程序,它读取目录中的所有文件。所有文件名均由数字组成(例如 10023134.txt)。

File dir = new File(directoryPath);
File[] files = dir.listFiles();
for (File file : files)
try {
if ( !file.exists())
continue;
else if (file.isFile()) {
// some process
}
} catch (Exception e) {}

我想知道默认情况下读取目录中的文件的顺序是怎样的。

程序似乎既不按数字顺序也不按创建日期的顺序读取文件。

最佳答案

JavaDoc 中所述:

There is no guarantee that the name strings in the resulting array will appear in any specific order; they are not, in particular, guaranteed to appear in alphabetical order.

如果您希望对它们进行排序,您必须自己对它们进行排序。

请注意,如果您使用默认顺序进行排序,您仍然会得到不同的结果,具体取决于您的操作系统。再次来自 JavaDoc :

The ordering defined by this method depends upon the underlying system. On UNIX systems, alphabetic case is significant in comparing pathnames; on Microsoft Windows systems it is not.

关于java - Java listFiles() 默认按什么顺序读取目录中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24484361/

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