【问题标题】:recursively scan files and add to array java递归扫描文件并添加到数组java
【发布时间】:2017-03-27 02:24:37
【问题描述】:

我有下面的 Java 代码来扫描指定目录中的所有文件并将它们添加到一个字符串中,然后返回该字符串以供进一步解析。但是,我似乎无法完成递归部分。有人可以帮忙吗?

public static String walk( String path ) {

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

    if (list == null) return null;

    String dirs = "";
    String files = "";

    for ( File f : list ) {
        Integer x = 0;
        Integer y = 0;
        if ( f.isDirectory() ) {
            files = files + walk( f.getAbsolutePath() + ", " );
            // System.out.println( "Dir:" + f.getAbsoluteFile() );
            // dirs[x] = (f.getAbsoluteFile()).toString();
            dirs = dirs + f.getAbsoluteFile() + ", ";
            // x++;
        }
        else {
            // System.out.println( "File:" + f.getAbsoluteFile() );
            // files[y] = (f.getAbsoluteFile()).toString();
            files = files + f.getAbsoluteFile() + ", ";
            // y++;
        }

        // System.out.println(Arrays.toString(dirs));
        // System.out.println(files.toString());

    }

    return files;
}

【问题讨论】:

  • walk( f.getAbsolutePath() + ", " )更改为walk( f.getAbsolutePath())+ ", "
  • 哈哈谢谢@Jerry06

标签: java arrays file recursion


【解决方案1】:

换行

        files = files + walk( f.getAbsolutePath() + ", " );

        files = files + walk( f.getAbsolutePath()) + ", " ;

【讨论】:

    猜你喜欢
    • 2013-03-31
    • 2014-10-11
    • 2023-03-16
    • 1970-01-01
    • 2021-01-17
    • 2012-04-02
    • 2010-11-02
    • 2012-10-10
    • 1970-01-01
    相关资源
    最近更新 更多