java - 仅获取特定目录级别的文件和子目录

时间:2017-04-18 04:30:05

标签: java

拥有路径,如何列出特定深度级别的所有文件/子目录?

使用java.nio.file.Files中的find(...)我可以指定maxDepth而不是我想要搜索的深度。

我可以在find()中使用matcher来根据深度级别过滤文件,但我不知道如何创建这个匹配器。

一般有两条路径我怎么知道一条路是否是“子路径”而且它的深度级别与另一路径有关呢?

谢谢

1 个答案:

答案 0 :(得分:0)

你可以这样做:

File folder = new File("your/path");
File[] listOfFiles = folder.listFiles();

    for (int i = 0; i < listOfFiles.length; i++) {
      if (listOfFiles[i].isFile()) {
        System.out.println("File " + listOfFiles[i].getName());
      } else if (listOfFiles[i].isDirectory()) {
        System.out.println("Directory " + listOfFiles[i].getName());
      }
    }

它允许你进入文件夹,但如果你想上升一级,那么:

File folder = new File("your/path");
    File parentFolder = folder.getParentFile();