安卓文件选择器URI转路径
创始人
2024-11-09 14:30:07
0

在安卓中,可以使用ContentResolver来将文件选择器返回的URI转换为文件路径。下面是一个示例代码:

public String getFilePathFromUri(Context context, Uri uri) {
    String filePath = null;
    // 判断Uri的Scheme
    if ("content".equalsIgnoreCase(uri.getScheme())) {
        // 如果是content类型的Uri
        String[] projection = {MediaStore.Images.Media.DATA};
        Cursor cursor = null;
        try {
            cursor = context.getContentResolver().query(uri, projection, null, null, null);
            int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
            if (cursor.moveToFirst()) {
                filePath = cursor.getString(column_index);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (cursor != null) {
                cursor.close();
            }
        }
    } else if ("file".equalsIgnoreCase(uri.getScheme())) {
        // 如果是file类型的Uri
        filePath = uri.getPath();
    }
    return filePath;
}

使用示例:

Uri uri = // 获取文件选择器返回的Uri
String filePath = getFilePathFromUri(context, uri);
if (filePath != null) {
    // 使用文件路径进行相关操作
} else {
    // 文件路径为空,处理异常情况
}

请注意,该方法只适用于content类型和file类型的Uri。对于其他类型的Uri,可能需要根据具体情况进行处理。

相关内容

热门资讯

wpk有透视辅助!wpk统计插... wpk有透视辅助!wpk统计插件(透视)先前是真的有挂(详细辅助攻略方法)是一款可以让一直输的玩家,...
wepoke的确有挂!智星德州... wepoke的确有挂!智星德州菠萝辅助(透视)从前是有挂(详细辅助揭秘攻略)是一款可以让一直输的玩家...
wpk辅助挂!wpk辅助神器(... 自定义wpk辅助挂系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器,不管你是...
德扑ai智能机器人!wepok... 您好,德扑ai智能机器人这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家...
wpk透视辅助工具!gover... wpk透视辅助工具!governorofpoker3有挂吗(透视)固有是有挂(详细辅助解密教程)1、...
德州之星有辅助挂!红龙扑克怎么... 德州之星有辅助挂!红龙扑克怎么看底牌(透视)一贯存在有挂(详细辅助科技教程)1、这是跨平台的德州之星...
wepoke黑科技!wepok... wepoke黑科技!wepoke辅助插件(透视)真是有挂(详细辅助微扑克教程)1、这是跨平台的wep...
微扑克wpk透视辅助!德扑计算... 一、微扑克wpk透视辅助简介了解软件请加微:136704302微扑克wpk透视辅助是一款在线扑克游戏...
微扑克ai机器人!微扑克系统是... 微扑克ai机器人!微扑克系统是不是有问题(透视)都是有挂(详细辅助力荐教程)您好,微扑克ai机器人,...
德州ai辅助!wepoke计算... 德州ai辅助!wepoke计算辅助(透视)其实真的有挂(详细辅助详细教程)wepoke计算辅助辅助器...