2010-05-30 188 views
2

我想在Java應用程序內部有類似Windows資源管理器的文件瀏覽器。文件資源管理器java

我只想要能夠遞歸地在文件夾中列出文件的東西。

有沒有簡單的方法來做到這一點?

我已經嘗試使用JFileChooser,但它不是我想要的。

回答

5

該片段允許您遞歸列出所有文件。你可以使用這些數據來填充一個JTree看到這個tutorial

public class Filewalker { 

    public void walk(String path) { 

     File root = new File(path); 
     File[] list = root.listFiles(); 

     for (File f : list) { 
      if (f.isDirectory()) { 
       walk(f.getAbsolutePath()); 
       System.err.println("Dir:" + f.getAbsoluteFile()); 
      } 
      else { 
       System.err.println("File:" + f.getAbsoluteFile()); 
      } 
     } 
    } 

    public static void main(String[] args) { 
     Filewalker fw = new Filewalker(); 
     fw.walk("c:\\"); 
    } 
} 
+0

+1遞歸。您可能還喜歡org.netbeans.swing.outline.Outline中的示例,在我的答案中提到。 – trashgod 2010-05-30 16:38:26

+0

謝謝,作品像魅力! – Studer 2010-06-01 14:39:33

+0

我不打算做-1,但:有一個文件實例,然後檢查它是否是一個文件夾。如果是這樣,您可以傳遞路徑並創建一個新實例,而您只能使用現有的實例。 – 2010-06-01 15:12:40