Java 我在android 11上实现了文件选择器,并以“"/文件/msf:1334“;

Java 我在android 11上实现了文件选择器,并以“"/文件/msf:1334“;,java,android,Java,Android,1.此方法执行成功,但返回null 私有字符串getRealPathFromURI(上下文,Uri contentUri){ 游标=空; 试一试{ 字符串[]proj={MediaStore.Files.FileColumns.DATA}; 游标上下文.getContentResolver().query(contentUri,proj,null, 空,空); int列_索引= cursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns.D

1.此方法执行成功,但返回null

私有字符串getRealPathFromURI(上下文,Uri contentUri){
游标=空;
试一试{
字符串[]proj={MediaStore.Files.FileColumns.DATA};
游标上下文.getContentResolver().query(contentUri,proj,null,
空,空);
int列_索引=
cursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns.DATA);
cursor.moveToFirst();
返回cursor.getString(列索引);
}
捕获(例外e){
Log.e(“标记”,“getRealPathFromURI异常:”+
e、 toString());
返回“”;
}最后
{if(游标!=null)
{   
cursor.close();
} 
}
} 
  • onActivityresult方法
  • activityresult(int-requestCode,int-resultCode,
    意向结果(数据){
    super.onActivityResult(请求代码、结果代码、结果数据);
    if(requestCode==选择PDF文件
    &&结果代码==活动。结果(确定){
    //结果数据包含文档或目录的URI
    //用户选择的。
    Uri=null;
    if(resultData!=null){
    uri=resultData.getData();
    Log.e(“Error!llll”,“nullll”+uri.getPath());
    字符串路径=getRealPathFromURI(s_活动,uri);
    Log.e(“Error!llllll”,“nullll”+路径);
    }
    }
    }
    
    您没有告诉我您想要什么和正在做什么。或者你会犯哪些错误。请写一篇普通的帖子。我正在尝试从收到的uri中获取文件的路径in@OverrideActivityResult上的公共void(int请求代码、int结果代码、意图结果数据){???请编辑你的帖子,使之成为一篇普通的帖子。并告诉你比现在更多的内容。不要使用评论。写一篇好帖子,因为没有什么是清楚的。但是在路径的地方,我得到了“/document/msf:1334”