Android学习笔记(5)---关于获取File路径、文件过滤

注:基于开发的项目:LearningFlash 一些代码段

1、变量的声明

	private String mRoot = "";//根路径
	private String[] fileName;//用来存放文件名
	private File[] mFiles; //用来存放获取到的文件
	int FileLen = 0; //获取到的文件个数

2、基于根路径获取器路径下的所有文件

private int getCur_Directory(String dirPath) {
		// TODO Auto-generated method stub

		try {
			File f = new File(dirPath);
			File[] files = f.listFiles();
			// 根据。。。分类
			// sortFilesByDirectory(temp);
			mFiles = files;
			FileLen = files.length;

		} catch (Exception ex) {

		}

		return FileLen;
	}

3、调用getCur_Directory


					mRoot = "/sdcard/快乐学堂/快乐英语/英语对话";
					FileLen = getCur_Directory(mRoot);
					fileName = new String[FileLen];

					for (int i = 0; i < FileLen; i++) {
						fileName[i] = mFiles[i].getName();
					}

4、最近在研究关于文件名过滤问题,查了一下资料,得知FileFilter可实现,无非就是使用一个方法:accept


可以看一下例子:

   private int getCur_Directory(String dirPath) {  
        // TODO Auto-generated method stub  
  
        try {  
            File f = new File(dirPath);  
            File[] files = f.listFiles(new FileFilter() {
				
				@Override
				public boolean accept(File pathname) {
					// TODO Auto-generated method stub
					String filename = pathname.getPath();
					if (pathname.isDirectory())
						return true;  
		            if(filename.endsWith(".lyl"))  
		                return true;  
		            else  
		                return false; 
				}
			});  
            // 根据。。。分类  
            // sortFilesByDirectory(temp);  
            mFiles = files;  
            FileLen = files.length;  
  
        } catch (Exception ex) {  
  
        }  
 
        return FileLen;  
    }  

return true则包含就来,不然就不包含。也就是说把不想要的过滤了。这样便达到了要求。

5、传一个路径,获取改路径下的所有想要后缀的文件:http://blog.csdn.net/xiangyong2008/article/details/5899740

你可能感兴趣的:(Android学习笔记,Android,学习笔记)