gpt4 book ai didi

android - 从 mediastore 的 URI 获取文件名和路径

转载 作者:IT老高 更新时间:2023-10-28 12:49:36 24 4
gpt4 key购买 nike

我有一个从媒体存储图像选择返回的 onActivityResult,我可以使用以下内容获取图像的 URI:

Uri selectedImage = data.getData();

将其转换为字符串会得到:

content://media/external/images/media/47

或者给一条路径:

/external/images/media/47

但是我似乎找不到将其转换为绝对路径的方法,因为我想将图像加载到位图中而不必将其复制到某处。我知道这可以使用 URI 和内容解析器来完成,但这似乎会在重启手机时中断,我猜 MediaStore 在重启之间不会保持其编号相同。

最佳答案

API 19 下使用此代码从 URI 获取文件路径:

public String getRealPathFromURI(Context context, Uri contentUri) {
Cursor cursor = null;
try {
String[] proj = { MediaStore.Images.Media.DATA };
cursor = context.getContentResolver().query(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
} finally {
if (cursor != null) {
cursor.close();
}
}
}

关于android - 从 mediastore 的 URI 获取文件名和路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3401579/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com