Android获取本地文件的真实路径,content类型转为file类型

来源网络。记录知识点以防备用.....

兼容不同的机型获取到的文件路径类型,以防异常情况发生。

public static String getPath(Context context, Uri uri) {
    if ("content".equalsIgnoreCase(uri.getScheme())) {
        String[] projection = {"_data"};
        Cursor cursor = null;
        try {
            cursor = context.getContentResolver().query(uri, projection, null, null, null);
            int column_index = cursor.getColumnIndexOrThrow("_data");
            if (cursor.moveToFirst()) {
                return cursor.getString(column_index);
            }
        } catch (Exception e) {
        }
    } else if ("file".equalsIgnoreCase(uri.getScheme())) {
        return uri.getPath();
    }
    return null;
}

你可能感兴趣的:(Android获取本地文件的真实路径,content类型转为file类型)