android根据uri或文件绝对路径获取文件基本信息
16lz
2021-12-04
//有需求,于是研究一下
在文件读取操作中,很容易能从回调intent传递的数据中获取文件uri,从而通过uri获取文件绝对路径,
Uri uri = intent.getDataString();
读取到uri后,如果文件为图片,则可通过
String[] proj = { MediaColumns.DATA };
// 好像是android多媒体数据库的封装接口,具体的看Android文档
Cursor cursor = managedQuery(originalUri, proj, null, null, null);
// 按我个人理解 这个是获得用户选择的图片的索引值
int column_index = cursor.getColumnIndexOrThrow(MediaColumns.DATA);
// 将光标移至开头 ,这个很重要,不小心很容易引起越界
cursor.moveToFirst();
// 最后根据索引值获取图片路径
String path = cursor.getString(column_index);
如若uri为文件,可通过
String path = uri.substring(7);(文件起头为:file:///)
获取。
继而可通过
//获取文件名
String name = path.substring(path.lastIndexOf("/") + 1,path.length());
//获取文件大小
File f = new File(path.substring(7));
long size = f.length();
来获取文件基本信息//学习所得,记录一下,有所错漏,以后再改
更多相关文章
- NPM 和webpack 的基础使用
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
- 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
- Android中使用ViewPager制作广告栏滚屏效果
- Android——使用AIDL实现进程间通讯简单案例
- android EditText 取消自动获取焦点
- 手动更新Android(安卓)SDK
- android + cygwin + cocos2d-x环境搭建
- Android中调用jni