我有一個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();
}
}
然後接受這個 –
:)測試怎麼把這段代碼親愛的 –
就像一個快速提示,我注意到在getallvideo()調用中,遊標查找MediaStore.Video.Media,但getColumnIndex調用請求MediaStore.Images.Media。這是否在這種情況下工作(從好奇的角度來問)? –
接受這個答案將幫助ü在這親愛的我提及兩個方法ü可以使用ND享受:) –