Java 如何从返回文件名及其文件夹名的文件夹中递归检索文件

Java 如何从返回文件名及其文件夹名的文件夹中递归检索文件,java,java-io,Java,Java Io,代码实际上检索文件,但除此之外,我还想获取文件夹的名称。不幸的是,我一直获取的只是文件夹的路径。我需要提取包含这些文件的子目录/文件夹的名称 public void listAllFilesInTheDirectory(String aDirectoryName){ File directory = new File(aDirectoryName); File[] allFiles = directory.listFiles(); for (File file : allF

代码实际上检索文件,但除此之外,我还想获取文件夹的名称。不幸的是,我一直获取的只是文件夹的路径。我需要提取包含这些文件的子目录/文件夹的名称

 public void listAllFilesInTheDirectory(String aDirectoryName){
   File directory = new File(aDirectoryName);
   File[] allFiles = directory.listFiles();

   for (File file : allFiles) { 
       if (file.isFile()) {
           System.out.println("File Name: "+file.getName());
           System.out.println("Parent : "+file.getParent());
        } else if (file.isDirectory()) {
            listAllFilesInTheDirectory(file.getAbsolutePath());
        }
 }
}  

输出:

您可能需要使用
folderFullPath.lastIndexOf(File.separator)
查找文件夹名称前
\
字符的索引,然后使用
子字符串
从完整路径中提取文件夹名称。

是否查找没有路径的父文件夹名称?如果是,请使用

System.out.println("Parent : "+file.getParentFile().getName());