zoukankan      html  css  js  c++  java
  • FilenameFilter总结

    一、FilenameFilter介绍

     

    java.io.FilenameFilter是文件名过滤器,用来过滤不符合规格的文件名,并返回合格的文件;

    一般地:

    (1)String[] fs = f.list();

    (2)File[] fs = f.listFiles();

    这两个方法返回f下的所有文件或目录;

    FilenameFilter用来把符合要求的文件或目录返回;

    因此可以调用:

    (1)String []fs = f.list(FilenameFilter filter);;

    (2)File[]fs = f.listFiles(FilenameFilter filter);

    二、文件名过滤器一般用法

     

    1.实现FilenameFilter接口;

    2.实现boolean accept(File dir,String name);   //dir表示文件的当前目录,name表示文件名;

    class DirFilter implements FilenameFilter{

    private Pattern pattern;            

    public DirFilter(String regex){

    this.pattern = Pattern.compile(regex);

    }

    public boolean accept(File dir,String name){           //返回true的文件则合格

    }

    三、实例

    复制代码
    package test1;
    
    import java.io.File;
    import java.io.FilenameFilter;
    import java.util.Arrays;
    import java.util.regex.Pattern;
    
    public class DirList {
        public static void main(String[] args){
            File path=new File(".");
            String[] list;
            if(args.length==0){
                list=path.list();
            }else{
                list=path.list(new DirFilter(args[0]));
            }
            Arrays.sort(list,String.CASE_INSENSITIVE_ORDER);
            for(String dirItem:list){
                System.out.println(dirItem);
            }
        }
    }
    
    class DirFilter implements FilenameFilter{
        private Pattern pattern;
        
        public DirFilter(String regex){
            pattern=Pattern.compile(regex);
        }
    
        @Override
        public boolean accept(File dir, String name) {    
            return pattern.matcher(name).matches();
        }
        
    }
    复制代码
  • 相关阅读:
    Entity SQL 初入
    ObjectQuery查询及方法
    Entity Framework 的事务 DbTransaction
    Construct Binary Tree from Preorder and Inorder Traversal
    Reverse Linked List
    Best Time to Buy and Sell Stock
    Remove Duplicates from Sorted Array II
    Reverse Integer
    Implement Stack using Queues
    C++中const限定符的应用
  • 原文地址:https://www.cnblogs.com/dudadi/p/8067675.html
Copyright © 2011-2022 走看看