I want to get the names of all image file in a directory (lets say pictures) into an array of strings. I'm still new so I don't know how to approach this. I just need a way to retrieve the filenames with the .png extension from the pictures folder on the sd card so I can store it in an array.
Asked
Active
Viewed 3,223 times
1
-
1[File](http://developer.android.com/reference/java/io/File.html) documentation would be a good point to start [as would searching this site or google](http://stackoverflow.com/questions/8835693/get-filenames-from-a-directory-in-android). Can you please show us what you have tried, the relevant code and the **specific** issues you are having. Read up on [How to create a Minimal, Complete, and Verifiable example](http://stackoverflow.com/help/mcve). Then [edit](http://stackoverflow.com/posts/25161482/edit) your question and give all the necessary details. – RossC Sep 11 '14 at 09:58
2 Answers
4
this is how to list files under any path.
private void listAllFiles(String pathName){
File file = new File(pathName);
File[] files = file.listFiles();
if(files != null){
for(File f : files){ // loop and print all file
String fileName = f.getName(); // this is file name
}
}
}

Techfist
- 4,314
- 6
- 22
- 32
1
You can do this using the java.io.File
If you just want the names you can use.
File dir = new File("<YourPath>");
ArrayList<String> names = new ArrayList<String>(Arrays.asList(dir.list()));
If you want the whole file object use.
File dir = new File("<YourPath>");
ArrayList<File> files = new ArrayList<File>(Arrays.asList(dir.listFiles()));
More Information

dknaack
- 60,192
- 27
- 155
- 202