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