Android Uri获取真实路径以及文件名的方法【转】
原文地址:https://blog.csdn.net/MikoGodZd/article/details/50979653
在Android 编程中经常会用到uri转化为文件路径
下面是4.4后通过Uri获取路径以及文件名一种方法
public static String getRealFilePath( final Context context, final Uri uri ) {
if ( null == uri ) return null;
final String scheme = uri.getScheme();
String data = null;
if ( scheme == null )
data = uri.getPath();
else if ( ContentResolver.SCHEME_FILE.equals( scheme ) ) {
data = uri.getPath();
} else if ( ContentResolver.SCHEME_CONTENT.equals( scheme ) ) {
Cursor cursor = context.getContentResolver().query( uri, new String[] { MediaStore.Images.ImageColumns.DATA }, null, null, null );
if ( null != cursor ) {
if ( cursor.moveToFirst() ) {
int index = cursor.getColumnIndex( MediaStore.Images.ImageColumns.DATA );
if ( index > -1 ) {
data = cursor.getString( index );
}
}
cursor.close();
}
}
return data;
}
等到的路径 /storage/emulated/0/图片/浪费-林宥嘉.mp3
怎么获取文件名呢?
String path="/storage/emulated/0/图片/浪费-林宥嘉.mp3";
String b = path.substring(path.lastIndexOf("/") + 1, path.length());
通过索引最后一个/就可以在String中截取了
Android Uri获取真实路径以及文件名的方法【转】的更多相关文章
- android Uri获取真实路径转换成File的方法
Uri uri = data.getData(); String[] proj = { MediaStore.Images.Media.DATA }; Cursor actualimagecursor ...
- android开发 根据Uri获取真实路径
Uri uri = data.getData(); String[] proj = { MediaStore.Images.Media.DATA }; Cursor actualimagecursor ...
- Android中获取文件路径的方法总结及对照
最近在写文件存贮,Android中获取文件路径的方法比较多,所以自己也很混乱.找了好几篇博客,发现了以下的路径归纳,记录一下,以备不时之需 Environment.getDataDirectory() ...
- python获取文件路径, 文件名, 后缀名
def get_filePath_fileName_fileExt(fileUrl): """ 获取文件路径, 文件名, 后缀名 :param fileUrl: :ret ...
- 通过PID获取进程路径的几种方法
通过PID获取进程路径的几种方法 想获得进程可执行文件的路径最常用的方法是通过GetModuleFileNameEx函数获得可执行文件的模块路径这个函数从Windows NT 4.0开始到现在的Vis ...
- Java JTable 表格 获取存储路径,文件名 ,导出excel表格
在做计量泵上位机软件时,需要将下位机传上来的数据,存入MYSQL数据库,显示在java 上位机界面上,并能导出至电脑指定位置. 选择存储路径和文件名: // 处理另存文件的菜单 public void ...
- Android 获取SD路径,存储空间大小的方法
Android用 Environment.getExternalStorageDirectory() 方法获取 SD 卡的路径 , 卡存储空间大小及已占用空间获取方法 : /* 获取存储卡路径 */ ...
- C#使用System.IO.Path获取文件路径、文件名
class Program { static void Main(string[] args) { //获取当前运行程序的目录 string fileDir = Environment.Current ...
- Android中获取资源的id和url方法总结
一,获取android工程里面的各种资源的id; 1.1 string型 比如下面: << string name=”OK”>> 客户端请求成功 << / stri ...
随机推荐
- java 两个日期之间的天数
private static int numDays(String start,String end){ Calendar startCal=Calendar.getInstance(); Strin ...
- vs2017配置文件目录
C:\Users\Administrator\AppData\Local\Microsoft\VisualStudio\15.0_6d0a0a42
- 【Jmeter自学】Jmeter性能测试(四)
==================================================================================================== ...
- 《机器学习实战》AdaBoost算法(手稿+代码)
Adaboost:多个弱分类器组成一个强分类器,按照每个弱分类器的作用大小给予不同的权重 一.Adaboost理论部分 1.1 adaboost运行过程 注释:算法是利用指数函数降低误差,运行过程通过 ...
- iar stm32 启动代码片段分析
今天查看了 iar 上面的启动文件,好奇堆栈指针到底是什么时候赋值的,所以就仔细的阅读了代码和相关手册,找到了答案. 首先,芯片启动后,会从ROM的首地址处进行执行,那么我们从 linker 里面找找 ...
- 转:SQL 操作结果集 -并集、差集、交集、结果集排序
为了配合测试,特地建了两个表,并且添加了一些测试数据,其中重复记录为东吴的人物. 表:Person_1魏国人物 表:Person_2蜀国人物 A.Union形成并集 Union可以对两个或多个结果集进 ...
- 关于php中的exec命令
这个命令 一般是被禁用的 一些特殊需求的时刻 可以启用 比如 调用系统上的一些数据或者命令 $command ='/www/wwwroot/t.6328.net/Public/cfile/test' ...
- 《算法》第四章部分程序 part 15
▶ 书中第四章部分程序,包括在加上自己补充的代码,Kruskal 算法和 Boruvka 算法求最小生成树 ● Kruskal 算法求最小生成树 package package01; import e ...
- spring mvc 常见错误
1 返回400, —— 请求参数不正确 2 返回406, HTTP ERROR: 406 NOT_ACCEPTABLE ———— @RequestMapping(value = "/user ...
- C#利用反射动态调用DLL并返回结果,和获取程序集的信息
反射的基本概念: .Net Framework 中提供了反射机制,可以再加载程序运行时,动态获取和加载程序集,并且可以获取到程序集的信息 创建Assembly和Entity两个程序集,在Assembl ...