包含content或者file的文件路径,eg:content://media/external/audio/media/43870 或者 file://media/external/audio/media/43870,转换为实际路径,可以使用
public String getRealPath(Uri fileUrl) {
String fileName = null;
if (fileUrl != null) {
if (fileUrl.getScheme().toString().compareTo("content") == 0) // content://开头的uri
{
Cursor cursor = this.getContentResolver().query(fileUrl, null,
null, null, null);
if (cursor != null && cursor.moveToFirst()) {
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA);
fileName = cursor.getString(column_index); // 取出文件路径
// if (!fileName.startsWith("/mnt")) {// 检查是否有"/mnt"前缀
// fileName = "/mnt" + fileName;
// }
cursor.close();
}
} else if (fileUrl.getScheme().compareTo("file") == 0) { //