博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android开发之——FilenameFilter文件过滤器
阅读量:4052 次
发布时间:2019-05-25

本文共 1388 字,大约阅读时间需要 4 分钟。

    

一、FilenameFilter介绍

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

一般地:

(1)String[] fs = f.list();

(2)File[] fs = f.listFiles();

这两个方法返回f下的所有文件或目录;

FilenameFilter用来把符合要求的文件或目录返回;

因此可以调用:

(1)String []fs = f.list(FilenameFilter filter);;

(2)File[]fs = f.listFiles(FilenameFilter filter);

二、文件名过滤器一般用法

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的文件则合格

}

}

三、实例    

要求:返回当前目录下所有以.mp3结尾的文件;

//过滤所有以.mp3结尾的文件class MusicFilter implements FilenameFilter {		public boolean accept(File dir, String name) {		return (name.endsWith(".mp3"));	}
然后显示在某个列表内:

//显示音乐文件列表	public void musicList() {				//取得需要遍历的文件目录		File home = new File("/sdcard/");		List
> list = new ArrayList
>(); //遍历文件目录 if (home.listFiles(new MusicFilter()).length > 0) { for (File file : home.listFiles(new MusicFilter())) { Map
map = new HashMap
(); System.out.println("musicName is: " + file.getName()); map.put("musicName", file.getName()); list.add(map); } sa = new SimpleAdapter(SetAlarm.this, list, R.layout.musicitems, new String[] { "musicName" }, new int[] { R.id.musicName }); listV.setAdapter(sa); } }}

转载地址:http://necci.baihongyu.com/

你可能感兴趣的文章
所谓的进步和提升,就是完成认知升级
查看>>
为什么读了很多书,却学不到什么东西?
查看>>
长文干货:如何轻松应对工作中最棘手的13种场景?
查看>>
如何用好碎片化时间,让思维更有效率?
查看>>
No.174 - LeetCode1305 - 合并两个搜索树
查看>>
No.175 - LeetCode1306
查看>>
No.176 - LeetCode1309
查看>>
No.182 - LeetCode1325 - C指针的魅力
查看>>
mysql:sql alter database修改数据库字符集
查看>>
mysql:sql truncate (清除表数据)
查看>>
yuv to rgb 转换失败呀。天呀。谁来帮帮我呀。
查看>>
yuv420 format
查看>>
yuv420 还原为RGB图像
查看>>
LED恒流驱动芯片
查看>>
驱动TFT要SDRAM做为显示缓存
查看>>
使用file查看可执行文件的平台性,x86 or arm ?
查看>>
qt5 everywhere 编译summary
查看>>
qt 创建异形窗体
查看>>
简单Linux C线程池
查看>>
内存池
查看>>