android开发分享Android中Uri和path file三者的相互转换

一、path转fileFile file = new File(path);二、path转uriUri uri = Uri.parse(path); 三、uri转path /** * 将URI路径转化为path路径 */ public static String getRealPathFromURI(Context context,Uri contentURI) { String result; Cursor curs.

 一、path转file
 File file = new File(path);

二、path转uri

 Uri uri = Uri.parse(path);  

三、uri转path

  /**      * 将URI路径转化为path路径      */     public static String getRealPathFromURI(Context context,Uri contentURI) {         String result;         Cursor cursor = null;         try {             cursor = context.getContentResolver().query(contentURI, null, null, null, null);         } catch (Throwable e) {             e.printStackTrace();         }         if (cursor == null) {             result = contentURI.getPath();         } else {             cursor.moveToFirst();             int idx = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);             result = cursor.getString(idx);             cursor.close();         }         return result;     }

四、uri转file

                     File file = null;   //图片地址                     try {                         file = new File(new URI(uri.toString()));                     } catch (URISyntaxException e) {                         e.printStackTrace();                     }

五、file转uri

    private static Uri getUriForFile(Context context, File file) {         if (context == null || file == null) {             throw new NullPointerException();         }         Uri uri;         if (Build.VERSION.SDK_INT >= 24) {             uri = FileProvider.getUriForFile(context.getApplicationContext(), context.getPackageName()+".fileProvider", file);         } else {             uri = Uri.fromFile(file);         }         return uri;     }

六、file转path

String path = file.getPath()

 

 

 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/addevelopment/896229.html

(0)
上一篇 2021年10月21日
下一篇 2021年10月21日

精彩推荐