In this example, the program will traverse the given directory and print out all the directories and files absolute path and name one by one.
Example
DirectoryTraverse.java
package com.favtuts.io.directory;
import java.io.File;
public class DirectoryTraverse {
public static void main (String args[]) {
displayIt(new File("/home/tvt/workspace/favtuts/test"));
}
public static void displayIt(File node){
System.out.println(node.getAbsoluteFile());
if(node.isDirectory()){
String[] subNote = node.list();
for(String filename : subNote){
displayIt(new File(node, filename));
}
}
}
}
Output
/home/tvt/workspace/favtuts/test
/home/tvt/workspace/favtuts/test/test-a1.log
/home/tvt/workspace/favtuts/test/soft-link
/home/tvt/workspace/favtuts/test/data
/home/tvt/workspace/favtuts/test/data/db.debug.conf
/home/tvt/workspace/favtuts/test/test-a2.log
/home/tvt/workspace/favtuts/test/file.txt
/home/tvt/workspace/favtuts/test/Test.java
/home/tvt/workspace/favtuts/test/test.log
/home/tvt/workspace/favtuts/test/test-b
/home/tvt/workspace/favtuts/test/test-b/test-b2.txt
/home/tvt/workspace/favtuts/test/test-b/test-d
/home/tvt/workspace/favtuts/test/test-b/test-d/test-d1.log
/home/tvt/workspace/favtuts/test/test-b/test-d/test-d2.log
/home/tvt/workspace/favtuts/test/test-b/test-c
/home/tvt/workspace/favtuts/test/test-b/test-c/test-c2.log
/home/tvt/workspace/favtuts/test/test-b/test-c/test-c1.log
/home/tvt/workspace/favtuts/test/test-b/test-b1.txt
/home/tvt/workspace/favtuts/test/README.md
Download Source Code
$ git clone https://github.com/favtuts/java-core-tutorials-examples
$ cd java-io/directory