文档章节

java 过滤指定后缀文件

 起名字什么的太麻烦了
发布于 2016/11/22 10:26
字数 377
阅读 14
收藏 0

通过FilenameFilter实现过滤文件后缀,下面是实现方法

 

 public static Map listPath(File file) {
        
        // 接收筛选过后的文件对象数组
        //用文件对象调用listFiles(FilenameFilter filter);方法,
        //返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录
        File files[] = file.listFiles(new MyFilenameFilter());
        //遍历出指定文件路径下的所有符合筛选条件的文件
        for(File f: files){
            if(f.isDirectory()){
                listPath(f);//递归遍历下
            }else{
                readFile(f);//  读取文件的方法
                System.out.println(f);
            }
        }
        return map;           
    }

package com.common;

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

public class MyFilenameFilter implements FilenameFilter {
    
    /**
     * 重写文件过滤器accept方法
     * param dir:当前文件  name:当前文件名
     * return boolean true or false
     *
     */
    @Override
    public boolean accept(File dir, String name) {
        // 创建返回值
        boolean flag = true;

        //dir.toString().indexOf("test")<0&& 是否过滤掉包含test的目录结构
        if (name.toLowerCase().endsWith(".html")) {
            //System.out.println(dir.toString());
        }else if((new File(dir, name).isDirectory())){
            
        }else {
            flag = false;
        }
          
        //当返回true时,表示传入的文件满足条件
        return flag;
    }

}

FilenameFileter介绍:

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

1.实现FilenameFilter接口;

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

class MyFilter implements FilenameFilter{

private String type;            //type为需要过滤的条件,比如如果type=".jpg",则只能返回后缀为jpg的文件

public MyFilter(String type){

this.type = type;

}

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

 

}

}

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 24
码字总数 12442
作品 0
win7中java编程工具安装 java环境变量设置

win7中java编程工具安装 java环境变量设置 Question:编译是显示'javac'不是内部或外部命令,也不是可运行的程序或批处理文件 解决: 在【系统变量】里编辑javahome、classpath、path环境变量...

澜fish
2014/03/07
0
0
-1-0 Java 简介 java是什么 java简单介绍

Java是一门纯粹的面向对象的高级的平台无关的编程语言 官网介绍: 了解 Java 技术 https://www.java.com/zh_CN/about/ 推荐词条: https://zh.wikipedia.org/wiki/Java https://zh.wikipedia.o...

noteless
07/03
0
0
selenium通过批处理来自动执行JAVA文件

一、在不想打开 eclipse的情况下,如何实现批处理来自动执行JAVA文件(批处理是自动打开命令窗口执行JAVA文件) 1、下载selenium-server-standalone-2.46.0.jar 2、把selenium-server-stand...

颜丽
2017/10/31
0
0
android编译系统的makefile文件Android.mk写法

android编译系统的makefile文件Android.mk写法如下 (1)Android.mk文件首先需要指定LOCALPATH变量,用于查找源文件。由于一般情况下 Android.mk和需要编译的源文件在同一目录下,所以定义成如...

wangjian19
2013/11/29
0
0
android编译系统makefile(Android.mk)写法

android编译系统的makefile文件Android.mk写法如下 (1)Android.mk文件首先需要指定LOCALPATH变量,用于查找源文件。由于一般情况下 Android.mk和需要编译的源文件在同一目录下,所以定义成如...

GuoKai
2012/09/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

java并发备忘

不安全的“先检查后执行”,代码形式如下: if(条件满足){ //这里容易出现线程安全问题//doSomething}else{//doOther} 读取-修改-写入 原子操作:使用CAS技术,即首先从V中读取...

Funcy1122
今天
0
0
SpringBoot2.0 停机

最近新建了个SpringBoot2.0的项目,因为原来一直使用的是传统的Tomcat部署war包的形式,所以这次SpringBoot内置Tomcat部署jar包的时候遇到了很多问题。其中一个就是因为没有外置的Tomcat容器...

Canaan_
昨天
0
1
Confluence 6 外部参考

一个外部参考的意思是任何站点链接到你 Confluence 的实例。任何时候当 Confluence 的用户单击这个外部链接的时候,Confluence 可以记录这次单击为参考。 在默认的情况下,外部链接的参考链接...

honeymose
昨天
0
0
Android中的设计模式之抽象工厂模式

参考 《设计模式解析》 第十一章 Abstract Factory模式 《设计模式:可复用面向对象软件的基础 》3.1 Abstract Factory 抽象工厂 对象创建型模式 《Android源码设计模式解析与实战》第6章 创...

newtrek
昨天
0
0
Redis | 地理空间(GEO)的一个坑

Redis的地理空间(Geo)是个好东西,轻轻松松的就可以把地图描点的问题处理了, 最近却遇到一个坑...Redis采用的Msater-Slave模式, 运用GEORADIUS在salve读取对应的数据,新增了从节点但是从不返...

云迹
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部