现在的位置: 首页 > 综合 > 正文

File中的FileFilter和FilenameFilter接口

2018年06月05日 ⁄ 综合 ⁄ 共 791字 ⁄ 字号 评论关闭

接口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);
		}

抱歉!评论已关闭.