Java Android Mp3文件-打开失败:enoint(没有此类文件或目录)

Java Android Mp3文件-打开失败:enoint(没有此类文件或目录),java,android,Java,Android,我不明白为什么我会得到这个例外。目录本身似乎就在那里。我可以在本地播放音乐,但当我尝试这样做时:FileInputStream-inputStream=newfileinputstream(audioFile)我得到了这个错误:/document/2710:open失败:enoint(没有这样的文件或目录) 这是我的完整代码: @Override public void onActivityResult(int requestCode, int resultCode, Intent data)

我不明白为什么我会得到这个例外。目录本身似乎就在那里。我可以在本地播放音乐,但当我尝试这样做时:
FileInputStream-inputStream=newfileinputstream(audioFile)我得到了这个错误:
/document/2710:open失败:enoint(没有这样的文件或目录)

这是我的完整代码:

 @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == 0 && resultCode == Activity.RESULT_OK){
        if ((data != null) && (data.getData() != null)) {

      Uri audioFileUri = data.getData();
      File file = new File(audioFileUri.getPath());
      //file.mkdirs();  <---- Making a directory does not work
      try {
             FileInputStream inputStream = new FileInputStream(audioFile); //This is where I get the error
           }
      catch{
             Log.i("TAG", e.getMessage());  
            }

     }
   }
 }
@覆盖
ActivityResult上的公共void(int请求代码、int结果代码、意图数据){
super.onActivityResult(请求代码、结果代码、数据);
if(requestCode==0&&resultCode==Activity.RESULT\u确定){
if((data!=null)&&(data.getData()!=null)){
Uri audioFileUri=data.getData();
File File=新文件(audioFileUri.getPath());
//mkdirs()文件;
如果
Uri
的方案是
文件
,那么这一行充其量也可以工作。在您的情况下,它是
内容


使用
getContentResolver().openInputStream()
Uri
标识的内容上打开
输入流
。这对
文件
内容
方案都有效。

通过编程检查该文件是否存在并且您拥有正确的权限:您在不同帖子中的回答实际上解决了我的问题。我更改了
文件输入流输入Stream=newfileinputstream(audioFile);
InputStream-InputStream=getContentResolver().openInputStream(uri);
现在它就像一个符咒。
File file = new File(audioFileUri.getPath());