我有一个 Android 程序需要列出给定路径中的所有音频和视频文件。
我知道如何列出特定文件夹中的所有文件/文件夹,但其他格式的文件也可能存在于该文件夹中。我不知道每个音频文件的格式,其他格式可能会在以后推出。我试图寻找答案,但无济于事。
如何检测特定文件是否为音频文件?
我有一个 Android 程序需要列出给定路径中的所有音频和视频文件。
我知道如何列出特定文件夹中的所有文件/文件夹,但其他格式的文件也可能存在于该文件夹中。我不知道每个音频文件的格式,其他格式可能会在以后推出。我试图寻找答案,但无济于事。
如何检测特定文件是否为音频文件?
您可以使用以下两种方法:
private void getallaudio() {
String[] STAR = {"*"};
Cursor audioCursor = ((Activity) cntx).managedQuery(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, STAR, null, null, null);
if (audioCursor != null) {
if (audioCursor.moveToFirst()) {
do {
String path = audioCursor.getString(
audioCursor.getColumnIndex(MediaStore.Audio.Media.DATA));
// Log.i("Audio Path",path);
} while (audioCursor.moveToNext());
}
// audioCursor.close();
}
}
private void getallvideo() {
String[] STAR = {"*"};
Cursor videoCursor = ((Activity) cntx).managedQuery(
MediaStore.Video.Media.EXTERNAL_CONTENT_URI, STAR, null, null, null);
if (videoCursor != null) {
if (videoCursor.moveToFirst()) {
do {
String path = videoCursor.getString(
videoCursor.getColumnIndex(MediaStore.Images.Media.DATA));
// Log.i("Video Path",path);
} while (videoCursor.moveToNext());
}
// videoCursor.close();
}
}