码迷,mamicode.com
首页 > 其他好文 > 详细

遍历文件改进

时间:2020-10-05 22:22:05      阅读:24      评论:0      收藏:0      [点我收藏+]

标签:tle   sys   with   实现类   out   for   public   ast   ring   

匿名类

import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;

public class Demo02Filter {
    public static void main(String[] args) {
        File file =new File("F:\\basic\\untitled12\\src\\it\\cast\\day14");
        getAllFile(file);
    }



    private static void getAllFile(File dir) {//可以使用匿名内部类

       /* File[] files=dir.listFiles(new FileFilter() {
            @Override
            public boolean accept(File pathname) {//过滤规则
                return pathname.isDirectory()||pathname.getName().toLowerCase().endsWith(".java");
            }
        });//传递过滤器对象*/

       File[] files=dir.listFiles(new FilenameFilter() {
           @Override
           public boolean accept(File dar, String name) {
               return new File(dar,name).isDirectory()||name.toLowerCase().endsWith(".java");
           }
       });




        for (File f : files) {
            if (f.isDirectory()){
                getAllFile(f);
            }
            else {
                System.out.println(f);
            }
        }

    }
}

 

 

import java.io.File;

public class Demo01Filter {
    public static void main(String[] args) {
        File file =new File("F:\\basic\\untitled12\\src\\it\\cast\\day14");
        getAllFile(file);
    }

    private static void getAllFile(File dir) {

        File[] files=dir.listFiles(new FileFilerImpl());//传递过滤器对象
        for (File f : files) {
            if (f.isDirectory()){
                getAllFile(f);
            }
            else {
                System.out.println(f);
            }
        }

    }
}

 

import java.io.File;
import java.io.FileFilter;

//创建过滤器File Filter的实现类,重写过滤方法accept,定义过滤规则
public class FileFilerImpl implements FileFilter {
    @Override
    public boolean accept(File file) {
        if (file.isDirectory()){
            return true;
        }
        return file.getName().toLowerCase().endsWith(".java");
    }
}

 

遍历文件改进

标签:tle   sys   with   实现类   out   for   public   ast   ring   

原文地址:https://www.cnblogs.com/cy2268540857/p/13770273.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!