【问题标题】:Java: list files recursively in subdirectories with Apache commons-IO 2.4Java:使用 Apache commons-IO 2.4 递归地列出子目录中的文件
【发布时间】:2013-11-15 13:32:09
【问题描述】:

我正在尝试在根目录及其子目录中列出扩展名为“.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());

}

【问题讨论】:

  • 你的正则表达式只匹配扩展名前的一个字符?
  • 哦,好电话。我应该使用 [a-zA-Z]*

标签: java recursion subdirectory apache-commons-io


【解决方案1】:

我发现这是可行的:

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

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

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

【讨论】:

    猜你喜欢
    • 2016-07-11
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    • 2012-04-07
    • 2018-06-23
    • 2021-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多