java中listFiles(Filefilter filter)文件过滤器的实现过程
jdk文档说明
方法:listFiles(Filefilter filter)用法
Filefilter是一个接口,接口中有一个抽象方法:Public bollean accpet(File pathname);
要想实现Filefilter 要创建一个类来实现接口
就比如创建一个myFilter类实现Filefilter接口
class Myfilter implements Filefilter{public boolean accpet(File pathname){retrun pathname.Getname().endwith(".txt");
};
上述代码实现了Filefilter接口的实现 以及accpet方法的重写 返回的类型是.txt文件。
如图:
例:
public static void main(String[] args){
File file = new File("g:\\a")
File[] fileArr = file.listFiles( new Myfilter());
for(File f :fileArr){System.out.println(f);}
}
该案例实现了从g盘下面的a文件夹里,文件后缀名为.txt文件的信息打印输出。
总结:
文件过滤器实现原理
1.首先listFiles 获得指定目录下的所有全路径
2.然后listFiles 将指定目录下的所有全路径传递给accpet方法中的参数(File file)
3.通过调用accpet()方法进行判断符合条件的文件内容将会返回给 File[]列表
4.最后通过增强for循环实现打印 指定类型的文件
java中listFiles(Filefilter filter)文件过滤器的实现过程相关推荐
- java filefilter的用法_Java File.listFiles(FileFilter filter)方法
Java Java File.listFiles(FileFilter filter)方法具有以下语法. public File [] listFiles(FileFilter filter) 示例 ...
- listFiles 中 FileFilter/FilenameFilter 文件过滤器
在File类中有两个和listFiles重载的方法,方法的参数传递的就是过滤器: File[] listFiles(FileFilter filter) 作用:用来过滤文件(File对象) 参数:Fi ...
- listFiles(FileFilter filter) 的源码解析
简单分析下File.listFiles(FileFilter filter)的内部实现 1.首先我们知道listFiles的作用是返回 File 所有的子文件然后可以传入一个FileFilter过滤器 ...
- 内存映射文件 写入 卡住_在Java中使用内存映射文件时检测(写入)失败
内存映射文件 写入 卡住 内存映射文件是一个很好的并且经常被忽视的工具. 我不会在这里详细介绍它们的工作方式(使用 力 Google Luke!),但我将快速总结其优势: 操作系统提供的延迟加载和写入 ...
- 在Java中使用内存映射文件时检测(写入)失败
内存映射文件是一个很好的并且经常被忽视的工具. 我不会在这里详细介绍它们的工作方式(使用 力 Google Luke!),但我将快速总结其优势: 操作系统提供的延迟加载和写入缓存(您不必自己编写,并且 ...
- Java中如何创建一个文件或者文件夹
Java中如何创建一个文件或者文件夹 创建一个文件夹: 调用Java中File类中的mkdir( )或者mkdirs( )方法 boolean makdir( ):创建一个文件夹,创建成功返回tru ...
- java 文件路径读取,java中依据路径读取文件
java中根据路径读取文件 根据文件路径读取文件.具体代码如下: /** * 根据文件路径读取文件 * @param path * @return String * @throws IOExcepti ...
- java中找不到文件是什么情况_java系统找不到指定文件怎么办
系统找不到指定文件解决方法如下:目录路径太长,这个文件找不到,是因为目录路径太长,windows识别不了这么长的目录,首先,这个目录上级目录已经是windows的.2.检查文件路径是否正确 3.另外, ...
- 在Java中实现SFTP协议文件传输的两种解决方案
在Java中实现SFTP协议文件传输的两种解决方案 1.1 背景 1.2 关于 FTP /FTPS 1.3 关于SFTP 解决方案一:使用 JSch 库 解决方案二:使用sshj 库 这篇博文来聊聊在 ...
最新文章
- python时间差中 seconds 和 total_seconds 区别
- C - Line-line Intersection Gym - 102220C(线段相交)
- 分布式文件系统研究-测试-上传文件测试
- Linux线程(四)
- oracle 控制文件 scn,重建控制文件后, 控制文件中的数据文件检查点SCN来自哪里...
- python 长时间运行 会停止_如何“停止”和“恢复”长时间运行Python脚本?
- 在CentOS6中安装Docker(新服务器不推荐)
- [HttpClient]HTTPClient PostMethod 中文乱码问题解决方案(2种)
- 基于mapreducer的图算法
- 通过自定义类加载器进行动态编译与动态实现接口
- Android 使用Nginx rtmp 模块
- 大数据市场交易趋旺物联网平台争夺加剧
- Java毕业设计:校园二手闲置物品交易网站(java+springboot+vue+mysql)
- malloc失败的一个原因
- 蓝韵DR采集工作站LINUX系统,蓝韵PACS系统的技术参数
- VMware虚拟机ubuntu指定使用主机的wifi无线网卡
- numeric mysql_MySQL数据类型-decimal与numeric的区别
- 情绪管理 | 压力、愤怒、烦恼,面对不良情绪,你会怎么做?
- shell命令三剑客之grep命令详解
- 正则匹配以什么开头、以什么结尾,以非什么开头,以非什么结尾