0

コンピューターに多数のフォルダーとファイルを含むフォルダー(ルートフォルダー)があります。ファイルのすべてのパス(ルートフォルダーから開始)を含む文字列配列を作成する必要があります(つまり、葉のみ=ファイルであり、フォルダーは含まれません)。これどうやってするの?

4

1 に答える 1

1

標準のJavaSEクラスと再帰を使用すると、次のように実行できます。

import java.io.File;

public class Test {
    public static void main(String[] args) {
        File root = new File("D:\\Downloaded"); // path to root folder
        process(root);
    }

    private static void process(File path) {
        File[] subs = path.listFiles();
        if (subs != null) {
            for (File f : subs) {
                if (f.isDirectory()) {
                    process(f);
                } else {
                    System.out.println(f.getAbsolutePath());
                }
            }
        }
    }
}

System.out.println()代わりに、パスをいくつかに入れたいと思うかもしれないことに注意してくださいArrayList

于 2012-11-11T18:12:23.967 に答える