文件浏览器Java

3
我希望在Java应用程序中拥有类似Windows资源管理器的文件浏览器。
我只需要能够递归列出文件夹内的文件的工具。
是否有简单的方法实现这一点?
我已经尝试使用JFileChooser,但它不符合我的要求。
3个回答

7

这段代码允许您递归列出所有文件。您可以使用数据填充JTree,参见此教程

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:\\" ); 
    } 
} 

+1 递归。你可能也会喜欢我回答中提到的 org.netbeans.swing.outline.Outline 示例。 - trashgod
我不会使用-1,但是:如果有一个文件实例,然后你检查它是否是一个文件夹。如果是,你就传递路径并创建一个新实例,而你可以只使用现有的实例。 - Martijn Courteaux

3

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接