我们做音乐播放器的时候需要从sdcard里面获取MP3文件和lrc文件,下面我就介绍一个获取sdcard里面的所有mp3文件和lrc文件
//定义一个List来存放所以的mp3文件,你可以存放路径也可以存放文件名
List mp3List = new ArrayList();
/**
*
* @param groupPath 如果你想获取SDcard下面的所以mp3文件你就填sdcard路径
* 用的是递归的方式获取
*/
public void getSDcardFile(File groupPath){
//循环获取sdcard目录下面的目录和文件
for(int i=0; i< groupPath.listFiles().length; i++){
File childFile = groupPath.listFiles()[i];
//假如是目录的话就继续调用getSDcardFile()将childFile作为参数传递的方法里面
if(childFile.isDirectory()){
getSDcardFile(childFile);
}else{
//如果是文件的话,判断是不是以.mp3结尾,是就加入到List里面
if(childFile.toString().endsWith(".mp3")){
mp3List.add(childFile.getName());
//打印文件的文件名
System.out.println(childFile.getName());
//打印文件的路径
System.out.println(childFile.getAbsolutePath());
}
}
}
}
FileSdcardFile = Environment.getExternalStorageDirectory();
然后调用getSDcardFile(SdcardFile)就能获取到所以的mp3文件啦