yijidemomo 2012-10-25 06:14 采纳率: 100%
浏览 22019
已采纳

从mediastore的uri中获得文件名和路径

我有一个从mediastore图像选择返回的onActivityResult,我可以用下边的代码给一个图像获得一个URI:

 Uri selectedImage = data.getData();

把它转换成一个字符串给这个:

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

或者转换成一个路径给这个::

/external/images/media/47

然后我好像不能找到一个方法把它转换成一个绝对路径,因为我想要把一个图片加载成位图而不用四处复制。我知道这个可以用URI和内容解析器来做,但是这似乎要打破了要一直重启手机,我猜MediaStore不能保持它的在不断重启之间相同的编号。

  • 写回答

3条回答

  • niangzhi 2012-10-25 07:37
    关注
    public String getRealPathFromURI(Uri contentUri) {
            String[] proj = { MediaStore.Images.Media.DATA };
            Cursor cursor = managedQuery(contentUri, proj, null, null, null);
            int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
            cursor.moveToFirst();
            return cursor.getString(column_index);
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 matlab计算中误差
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊