Uri转换为File文件路径

URI是统一资源标识符(Uniform Resource Identifier) ,它的作用是根据这个URI找到某个资源文件,基本格式如: file:///sdcard/temp.jpg(就是根据你提供的例子生成的一个路径)。

ContentProvider是程序间共享数据的,它也需要生成URI供别的程序调用,格式如:

content:///StudentDB/student/name,以后你在别的程序想访问另一个程序里的数据库,就可以用这个URI去访问了,而不用进行数据库连接的操作,非常方便。

至于已知文件的Uri如何转换为该文件所在路径,核心代码如下:

Uri uri = intent.getData();		
File file = null;
String[] proj = { MediaStore.Images.Media.DATA };
Cursor cursor = getActivity().managedQuery(uri, proj, null,null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
String filepath = cursor.getString(column_index);
file = new File(filepath<span style="font-family: Arial, Helvetica, sans-serif;">);</span>
file就是该文件的绝对路径。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值