Java:使用 Apache commons-IO 2.4 在子目录中递归列出文件

标签 java recursion subdirectory apache-commons-io

我正在尝试列出根目录及其子目录中扩展名为“.xls”的文件,使用以下代码和 Apache Commons-IO 2.4图书馆。我正在检查 collection<File> 的大小,但它给出了 0。我看不出代码中哪里有问题。你能帮我解决这个问题吗?

public static void main(String[] args) throws IOException {

    File rootDir = new File(args[0]);

    Collection<File> files = FileUtils.listFiles(rootDir, new RegexFileFilter("[a-zA-Z].xls"), DirectoryFileFilter.DIRECTORY);

    System.out.println("collection size:" + files.size());

}

最佳答案

我发现这个有效:

    final String[] SUFFIX = {"xls"};  // use the suffix to filter

    File rootDir = new File(args[0]);

    Collection<File> files = FileUtils.listFiles(rootDir, SUFFIX, true);

关于Java:使用 Apache commons-IO 2.4 在子目录中递归列出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19776063/

相关文章:

java - 将递归方法(递归在循环内完成)转换为迭代方法

java - 如何使用java8流一对一地比较两个列表元素的相等性?

algorithm - Avoidland - 放置 n 个棋子的最小步数,以便每行和每列中只有一个?

c - 如何列出C中给定目录中的所有子目录?

java - 用于搜索/查找的目录路径中正则表达式中的通配符?

java - 审计实体的 Dynamics 365 RetrieveAttributeChangeHistory OData 函数

java - 如何将查询传递给 FirestoreRecyclerOptions?

python - 在金字塔评分系统​​中计算分数

java - 如何递归搜索文件(我的自定义代码)?

ruby-on-rails - 乘客+nginx : Hosting a Rails application in a subdirectory