JAVA ANDROID – 获取文件夹的列表文件
我想在GridView
显示不同文件夹的图像,但我不知道我需要做什么才能获得一个列表,其中包含drawable文件夹内的文件名。
此方法将为您提供包含dir文件夹列表以及子文件夹的列表:
public void listf(String directoryName, ArrayList files) { File directory = new File(directoryName); // get all the files from a directory File[] fList = directory.listFiles(); for (File file : fList) { if (file.isFile()) { files.add(file); } else if (file.isDirectory()) { listf(file.getAbsolutePath(), files); } } }
在AsyncTask类中首先使用此方法。
private List getListFiles(File parentDir) { ArrayList inFiles = new ArrayList (); File[] files = parentDir.listFiles(); for (File file : files) { if (file.isDirectory()) { if(file.getName().toString().toLowerCase().contains(fileNameToSearch.toLowerCase()) || file.getName().toString().toUpperCase().contains(fileNameToSearch.toUpperCase())){ inFiles.add(file); }else { inFiles.addAll(getListFiles(file)); } } else { if(file.getName().toString().toLowerCase().contains(fileNameToSearch.toLowerCase()) || file.getName().toString().toUpperCase().contains(fileNameToSearch.toUpperCase())){ inFiles.add(file); } } } return inFiles; }
从doInBackground(...)
调用此方法
List files = getListFiles(new File(directoryPath));