如何从java目录中列出目录项

如何从java目录中列出目录项,java,Java,我正在构建一个程序,其中输入是一个目录路径,输出应该显示该路径中的所有文件,包括给定路径中目录中的文件。例如:输入:C:输出:C:/Directory1和C:/Directory1/file1.pdf。 static string Directory = sc.next(); static File folder = new File(Directory); static File[]listofFiles = folder.listFiles(); public static void Li

我正在构建一个程序,其中输入是一个目录路径,输出应该显示该路径中的所有文件,包括给定路径中目录中的文件。例如:输入:C:输出:C:/Directory1C:/Directory1/file1.pdf。

static string Directory = sc.next();
static File folder = new File(Directory);
static File[]listofFiles = folder.listFiles();

public static void ListOfFilesInADirectory (final File folder) {
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());
              }
            }
    }
static string Directory=sc.next();
静态文件文件夹=新文件(目录);
静态文件[]listofFiles=folder.listFiles();
公共静态无效ListOfficeInDirectory(最终文件文件夹){
对于(int i=0;i

上面的代码是该目录的输入代码和该目录中所有文件的输出代码,但不是该目录文件夹中的文件。我如何也显示导演文件夹中的文件?

听起来你想要这样的东西

\---folder
    |   file1.txt
    |   file2.txt
    |
    \---subfolder
            file3.txt
            file4.txt
打印

folder\file1.txt
folder\file2.txt
folder\subfolder\file3.txt
folder\subfolder\file4.txt
如果这个假设是正确的,一个解决方案是尝试使用java.nio.file.Files.walk(Path)

walk(path)可以通过遍历以给定起始文件为根的文件树来返回这些子文件夹文件

Files.walk(Paths.get("folder"))
        .filter(Files::isRegularFile)
        .forEach(System.out::println);//print out the files in all directories from root