java中Filefilter和Filenamefilter的区别

java中Filefilter和Filenamefilter的区别,第1张

两种机制而已简圆,筛选时的参数不同,很多类库都会提供多种调用嫌或方式,并无不同,只是适配更多的情况

FileFilter filefilter = new FileFilter() {

public boolean accept(File file) {

//if the file extension is .txt return true, else false

if (file.getName().endsWith(".txt")) {

return true

}

return false

}

}

FilenameFilter filefilter = new FilenameFilter() {

public boolean accept(File dir, String name) {

//if the file extension is .txt return true, else false

return name.endsWith(".txt")

}

}

看到了吧,是接口里方法的参数类型不芹咐伍同,这样你可以选自己需要的接口

import java.io.File

import java.io.FilenameFilter

/**

* 文件唯敏过滤器的简单实现

*

* @author ajaxfan

* @date 2010-04-17

*/

public class FileNameFilterDemo {

public static void main(String[] args) {

list("d:/")

}

/**

* 列出租塌特定路径下的txt文指型枝件

*

* @param directoryName

*路径名

*/

private static void list(String directoryName) {

File dir = new File(directoryName)

// 确定该路径指向一个目录

if (dir.exists() &&dir.isDirectory()) {

// 列出所有结尾为txt的文件

File[] files = dir.listFiles(new FilenameFilter() {

@Override

public boolean accept(File dir, String name) {

return name.endsWith("txt")

}

})

System.out.println(java.util.Arrays.toString(files))

}

}

}

过滤器顾名思义就是进行过滤的,可以实现代码的定向执行和预处理。

通俗点说法filter相当于加油站,request是条路,response是闭局条路,目的地是servlet,这个加油站设在什么地方对什么数据 *** 作可以由你来控制。

备注:过滤器可以再请求和响应之前做一部分预处理,有效的过扒态侍滤掉不春吵需要的内容,而且过滤器可以被复用,节省了大量的复用代码,提高了java的代码执行效率


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8195606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存