Поскольку вы хотите, чтобы ваши пользователи выбирали просто каталог, вам нужно будет найти mp3-файлы самостоятельно.
Вы можете рекурсивно пройти по каталогу в поисках файлов, заканчивающихся на ".mp3".
public static void findMp3s(File root, List<File> toBuildUp) {
// if the File is not a directory, and the name ends with mp3
// we will add it to our list of mp3s
if (!root.isDirectory() && root.getName().endsWith("mp3")) {
toBuildUp.add(root);
return;
}
if (!file.isDirectory())
return;
// Now, we know that root is a Directory
// We will look through every file and directory under root,
// and recursively look for more mp3 files
for (File f: root.listFiles()){
findMp3s(f, toBuildUp);
}
}
Предыдущий метод будет рекурсивно проходить по всем каталогам и заполнять toBuildUp
каждым mp3-файлом в этом каталоге.
Этот метод будет вызываться следующим образом:
List<File> allMp3s = new ArrayList<File>();
findAllMp3s(selectedDirectory, allMp3s);