재귀 적 방법을 사용하여 디렉토리와 하위 디렉토리의 파일이 나열됩니다.
메서드는 현재 디렉토리의 파일을 나열한 다음 모든 하위 디렉토리에 대해 반복적으로 호출합니다.
import java.io.File; public class FolderListAllFilesDirectory { public static void listAllFiles(File file){ // List all the files using the filter File[] tab = file.listFiles(); for( File current : tab ){ if( current.isFile() ) System.out.println( current.getAbsolutePath() + " is a file " ); else if( current.isDirectory() ){ listAllFiles( current ); } } } public static void main(String[] argv) { File file = new File("V:/tmp/aaa"); listAllFiles( file ); } }
V:\tmp\aaa\New Text Document.txt is a file V:\tmp\aaa\oliviertech.com\index.html is a file V:\tmp\aaa\oliviertech.com\test\test.txt is a file V:\tmp\aaa\oliviertech.com\test.html is a file
메소드는 파일을 표시하고 파일 시스템이 리턴 한 각 서브 디렉토리를 처리합니다. 메서드는 너비에 의해 처리되도록 수정 될 수 있으며 파일이 먼저 반환됩니다. 또는이 방법은 먼저 깊이별로 처리 할 수 있습니다. 디렉토리와 하위 디렉토리가 먼저 처리됩니다.