A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

package second;

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

/**
* 把指定目录下的同一类型的文件的绝对路径放在一个文本文件中
* 建立一个java文件列表文件
* 思路:
* 1.对指定文件进行递归
* 2.过去递归过程中所有的java文件的路径
* 将这些文件存储到一个集合中
* 将集合中的数据写入到文件中
*/
public class DeletedirDemo {
    public static void main(String []args){
        File dir=new File("E:\\testdir");
        List<File>list=new ArrayList<File>();
        fileToList(dir,list);
        writeToFile(list,"E:\\testdir\\javaFileList.txt");
    }

    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);
                }
            }
        }
    }
    public static void writeToFile(List<File>list,String javaFileList){
        BufferedWriter bw=null;
        try {
            bw=new BufferedWriter(new FileWriter(javaFileList));
            for(File file:list){
                String path=file.getAbsolutePath();
                bw.write(path);
                bw.newLine();
                bw.flush();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }finally{
            try {
                if(bw!=null)
                    bw.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马