zoukankan      html  css  js  c++  java
  • java 过滤文件

    package io;

    import java.io.File;
    import java.util.Arrays;

    public class DirList {

        public static void filterFile(String[] regexes) {
            File path=new File("D:\\");
            String[] list;
            if(regexes.length==0){
                list=path.list();
            }else{
                list=path.list(new DirFilter(regexes[0]));
            }
            Arrays.sort(list,String.CASE_INSENSITIVE_ORDER);
            for(String dirItem:list){
                System.out.println(dirItem);
            }
        }
    }

    package io;

    import java.io.File;
    import java.io.FilenameFilter;
    import java.util.regex.Pattern;

    public class DirFilter implements FilenameFilter {
        private Pattern pattern;
       
        public DirFilter(String regex){
            pattern=Pattern.compile(regex);
        }
        @Override
        public boolean accept(File file, String fileName) {
            return pattern.matcher(fileName).matches();
        }

    }

    package io;

    public class TestFileFilter {

        public static void main(String[] args) {
            //String[]regex={"^(\\d|\\w|\u4e00-\u9fa5)+\\.zip{1}"};
            //String[]regex={"^(\\d|\\w|[\u4e00-\u9fa5]+)+\\.zip{1}"};
            String[]regex={".+\\.zip"};
            DirList.filterFile(regex);
        }
    }

    正则表达式写法: ".+\\.zip”    . 表示任意字符 \\.表示点

  • 相关阅读:
    Eclipse 快捷键
    计算机网络之读Internet网发展史 读后感
    计算机网络之读Internet网发展史 读后感
    动态加载布局的技巧
    二、JSP的3个编译指令,7个动作指令,9个内置对象
    【杭电】[2050]折线分割平面
    【杭电】[2050]折线分割平面
    【杭电】[2068]RPG的错排
    【杭电】[2068]RPG的错排
    【杭电】[4500]小Q系列故事——屌丝的逆袭
  • 原文地址:https://www.cnblogs.com/IamThat/p/3039873.html
Copyright © 2011-2022 走看看