List file structure within folder or hard drive



This code example lists the files and folders and also the content in all subfolders.

With recursive calls the file/directory tree can be listed with
a relatively small amount of code.

The purpose of the getTabs method and the variable tabCounter is only to
make the output more viewable with indenting for each level.



import java.io.File;

public class FileStructure {

  int tabCounter = 0;

  public void listFilesAndFolders(String folder) {

    File file = new File(folder);

    if (!file.exists() || !file.isDirectory()) {

      System.out.println("Parameter is not a directory");
      System.exit(1);

    }

    File[] fileArray = file.listFiles();

    for (int i = 0; i < fileArray.length; i++) {

      if (fileArray[i].isDirectory()) {

        System.out.println(getTabs() + "- " + fileArray[i].getName());
        tabCounter++;
        listFilesAndFolders(fileArray[i].getAbsolutePath());

      }
      else {

        System.out.println(getTabs() + fileArray[i].getName());
      }
    }
    tabCounter--;

  }

  private String getTabs() {

    StringBuffer buffer = new StringBuffer();
    for (int i = 0; i < tabCounter; i++)
      buffer.append("\t");

    return buffer.toString();
  }

  public static void main(String[] args) {

    FileStructure fileStructure = new FileStructure();
    fileStructure.listFilesAndFolders("C:\\temp");
  }
}
 
Do you know your Java?
Take a Ten-Question-Java-Quiz!

Bookmark: Social bookmarks del.icio.us digg Furl YahooMyWeb blinkbits BlinkList blogmarks co.mments connoteas De.lirio.us Fark feedmelinks LinkaGoGo Ma.gnolia NewsVine Netvouz RawSugar Reddit scuttle Shadows Simpy Smarking Spurl TailRank Wists segnalo




   Need Java help? You are just a few bucks away.

   This is how it works:
  • Send us a detailed description of what you need help with.
  • We send you a confirmation when we start working on your request, and then we send you the compiled Java code for you to test out.
  • If you are satisfied with the result we send you a secure link where you can make the payment for the Java source code, usually a few bucks (depends on the work required).
  • The source code is sent to you once the payment is completed.


Write your detailed request here:
   

E-mail address: