File中的FileFilter和FilenameFilter接口

这篇博客介绍了FileFilter和FilenameFilter接口在文件和目录过滤中的应用。FileFilter用于抽象路径名过滤,常用于File类的listFiles()方法。而FilenameFilter则用于过滤文件名,常见于GUI文件对话框组件的目录清单过滤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

接口FileFilter

用于抽象路径名的过滤器,此接口的实例可传递给File类的listFiles(FileFilter)方法

方法:

public boolean accept(File pathname)
注:此方法可以对路径进行过滤


接口FilenameFilter

用于过滤文件名,Abstract Window Toolkit的文件对话框组件使用这些实例过滤File类的list方法中的目录清单。

方法:

public boolean accept(File dir, String name)
注:此方法可以对文件名进行过滤

FileFilter案例:

//创建File对象
		File file = new File("D:\\Android");
		
		/**
		 * 测试FileFilter接口
		 */
		File[] files = file.listFiles(new FileFilter() {
			
			@Override
			public boolean accept(File pathname) {
				if (pathname.canWrite()){
					return true;
				} else {
					return false;
				}
				
			}
		});
		
		//输出
		for (File f : files){
			System.out.println(f);
		}
		
FilenameFilter案例:
//创建File对象
		File file = new File("D:\\Android");
		
		/**
		 * 测试FilenameFilter
		 */
		String[] fils = file.list(new FilenameFilter() {
			
			@Override
			public boolean accept(File dir, String name) {
				if (name.endsWith(".txt")){
					return true;
				} else {
					return false;
				}
				
			}
		});
		
		//输出
		for (String f : fils){
			System.out.println(f);
		}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值