Kanika Kanika - 4 months ago 19
Android Question

List all the files from all the folder in a single list

Hi I am looking for the solution to list all the files from root/Android device.

Suppose there are 3 folder inside root directory,but I want to display all the files in all of these folder in a single list..

Now If am using

File f=new File("/sdcard");

Then it will list all the files from the sdcard folder only..and If I will use

File f=new File("/download");

Then it will list all the files from download folder only ..and if I will use

File f=new File("/");

Then it will list only root direcoty files...not the files inside /sdcard or /download..

So what steps shall I follow to list all the files with a filter to list only .csv files from all the folder inside root.



Try this:

 List<File> files = getListFiles(new File("YOUR ROOT")); 
 private List<File> getListFiles(File parentDir) {
    ArrayList<File> inFiles = new ArrayList<File>();
    File[] files = parentDir.listFiles();
    for (File file : files) {
        if (file.isDirectory()) {
        } else {
    return inFiles;

or variant without recursion:

private List<File> getListFiles2(File parentDir) {
    List<File> inFiles = new ArrayList<>();
    Queue<File> files = new LinkedList<>();
    while (!files.isEmpty()) {
        File file = files.remove();
        if (file.isDirectory()) {
        } else if (file.getName().endsWith(".csv")) {
    return inFiles;