Android中的文件扫描

在android中我们有时会做有关电子书阅读器、音乐播放器等软件,那么我们就避免不了要对内存中的文件进行扫描,音乐播放器我们可以使用android自带的MediaProvider进行处理,而其他的不是媒体文件就要我们自己处理了,接下来我将介绍两种对内存文件进行扫描的方法,以.txt后缀名的文件为例。

第一种:

private void fileScan(File file){
			File[] files = file.listFiles();
			if(files!=null){
				for(File item : files){
					//item.isHidden()判断文件是否为隐藏的文件
					if(item.isDirectory()&&!item.isHidden()){
						//如果是文件夹进行再次扫描
						fileScan(item);
					}else if(!item.isHidden()&&item.getName().endsWith(".txt")){
						//判断是否以.txt后缀的文件
						//以下写上自己的处理,可以存到一个文件集合中List<File>
						
					}
				}
			}
		}
第二种:

	private void fileScan(File file){
				//FilenameFilter为文件过滤器
			file.listFiles(new FilenameFilter() {
				
				@Override
				public boolean accept(File dir, String filename) {
					//dir为扫描的文件的上级文件
					//filename为当前扫描到的文件名
					File file = new File(dir, filename);
					//item.isHidden()判断文件是否为隐藏的文件
					if(file.isDirectory()&&!file.isHidden()){
						//如果是文件夹进行再次扫描
						fileScan(file);
					}else if(!file.isHidden()&&file.getName().endsWith(".txt")){
						//判断是否以.txt后缀的文件
						//以下写上自己的处理,可以存到一个文件集合中List<File>					
					}
					return false;
				}
			});
		}






发布了4 篇原创文章 · 获赞 3 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/lsh_sh/article/details/57406219