练习:获取目标文件夹下的.java文件并存储到文件中

package filetest;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class JavaFileList {

    public static void main(String[] args) throws Exception {

        File dir = new File("H:\\aaa");
        List<File> list = new ArrayList<File>();
        fileToList(dir, list);

        File file = new File(dir, "javaList.txt");
        writerToFile(list, file.toString());
    }

    // 将文件存储到List
    public static void fileToList(File dir, List<File> list) {

        File[] files = dir.listFiles();
        for (File file : files) {
            if (file.isDirectory())
                fileToList(file, list);
            else {
                if (file.getName().endsWith(".java"))
                    list.add(file);
            }
        }
    }

    // 将List写到文件中保存
    public static void writerToFile(List<File> list, String javaListFile)
            throws Exception {

        BufferedWriter bufw = null;
        try {
            bufw = new BufferedWriter(new FileWriter(javaListFile));

            for (File f : list) {
                String path = f.getAbsolutePath();
                bufw.write(path);
                bufw.newLine();
                bufw.flush();
            }
        } catch (Exception e) {
            throw e;
        } finally {
            try {
                if (bufw != null)
                    bufw.close();
            } catch (IOException e) {
                throw e;
            }
        }
    }
}

你可能感兴趣的:(练习:获取目标文件夹下的.java文件并存储到文件中)