zoukankan      html  css  js  c++  java
  • 文件名过滤器FilenameFilter的用法

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

    实例1,匹配指定字符结尾的文件

    package cn.test;
    
    import java.io.File;
    import java.io.FilenameFilter;
    import org.junit.Test;
    
    public class Demo4  {
    	@Test
    	public void test1(){
    		File file = new File("D:/Temp");
    		FilterBysuffix filter = new FilterBysuffix(".txt");
    		String[] files = file.list(filter);
    		for (String fileName : files){
    			System.out.println(fileName);
    		}
    	}
    }
    
    
     class FilterBysuffix implements FilenameFilter{
    	private String suffix;
    	public FilterBysuffix(String suffix){
    		this.suffix=suffix;
    	}
    	@Override
    	public boolean accept(File dir, String name) {
    		return name.endsWith(suffix);
    	}
    }
    

      结果:

    实例2,正则匹配文件

    public class Test1 {
    	
    	@Test
    	public void demo1() throws IOException{
    		File file = new File("D:/tmp");
    		FilterByMatches filterByMatches = new FilterByMatches(".*txt$");
    		String[] files = file.list(filterByMatches);
    		for(String f : files){
    			System.out.println(f);
    		}
    	}
    }
    
    class FilterByMatches implements FilenameFilter{
        private String suffix;
        public FilterByMatches(String suffix){
            this.suffix=suffix;
        }
        public boolean accept(File dir, String name) {
            return name.matches(suffix);
        }
    }
    

      结果:

  • 相关阅读:
    lambda表达式
    Java的MongoDB驱动及读写策略
    MongDB主从复制、复制集
    PL/SQL练习
    MySQL数据库MyISAM和InnoDB存储引擎的比较(转)
    Java的垃圾回收概述
    springMVC源码浅析
    ActiveMQ使用总结
    常用的缓存产品比较
    Nginx+tomcat负载均衡并动静态分离
  • 原文地址:https://www.cnblogs.com/zydev/p/7191182.html
Copyright © 2011-2022 走看看