Pages

Monday, April 9, 2012

[Android] List file with filter

I have posted another article on Java, but it fails with I apply it on Android, so I use this in my Android apps.




import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class FileHelper

{

    public static List<File> fetchFileList(String directoryName, final String fileExtension)

    {


        List<File> fileList = new ArrayList<File>();

        File fileDirectory = new File(directoryName);

       
       
        getDirectoryContent(fileList, fileDirectory, fileExtension);

        return fileList;

    }


    private static void getDirectoryContent(List<File> fileList, File fileDirectory, String fileExtension)

    {

        if (fileDirectory.exists())
        {

            try
            {
                for (File file : fileDirectory.listFiles())

                {

                    //Log.i("FileHelper processing file:", file.getAbsolutePath());

                    if (file.isDirectory())

                        getDirectoryContent(fileList, file, fileExtension);

                    else

                    {

                        String fileName = file.getName();

                        if (fileName.endsWith(fileExtension.toLowerCase()) || fileName.endsWith(fileExtension.toUpperCase()))

                            fileList.add(file);

                    }

                }
            }
            catch(Exception e)
            {
                System.out.println("error at: " + fileDirectory);
            }
           
        }
    }

}

No comments:

Post a Comment