我想知道如何在音乐播放器中获取所选文件的文件名。在我的编码中,我从音乐播放器中选择了mp3文件并从意图中获取数据并将其分配给uri,我只获得音乐播放器播放列表中的所选位置,如路径/ 1 或路径/ 2 ,其中我无法获取Mp3文件的FileName。请帮我解决这一个。这是我的参考代码
//for opening the file
Intent intent = new Intent();
intent.setType("audio/mp3");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(
Intent.createChooser(intent, "Complete action using"),
PICK_FROM_FILE);
//获取FileName
String mPath = null;
Uri mToneCaptureUri;
mToneCaptureUri = data.getData();
mPath = mToneCaptureUri.getPath(); // from File ManagerF
setPath(mPath);
答案 0 :(得分:3)
获取完整路径和文件名
public String getPath(Uri uri) {
String[] projection = { MediaStore.Audio.Media.DATA };
Cursor cursor = managedQuery(uri, projection, null, null, null);
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
在onActivityResult上使用它
mpath = getPath(data.getData());