Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java FileNotFoundException:打开失败:当将目标从21更改为26时,ENOENT(没有这样的文件或目录)_Java_Android - Fatal编程技术网

Java FileNotFoundException:打开失败:当将目标从21更改为26时,ENOENT(没有这样的文件或目录)

Java FileNotFoundException:打开失败:当将目标从21更改为26时,ENOENT(没有这样的文件或目录),java,android,Java,Android,我开发了一个Android应用程序,API 21作为目标SDK版本。 我将下载的文件保存在内存中。然后在新版本中,我用TargetSDK版本26更新了我的应用程序,并将下载的文件保存在Android/data/com.xxx/file/folder上。在新版本上。 当用户拒绝旧版本(目标21)的存储权限并下载文件时,一切正常。但当更新到新版本(目标26)并尝试下载时,会出现以下问题: java.io.FileNotFoundException:/storage/emulated/0/Androi

我开发了一个Android应用程序,API 21作为目标SDK版本。 我将下载的文件保存在内存中。然后在新版本中,我用TargetSDK版本26更新了我的应用程序,并将下载的文件保存在Android/data/com.xxx/file/folder上。在新版本上。 当用户拒绝旧版本(目标21)的存储权限并下载文件时,一切正常。但当更新到新版本(目标26)并尝试下载时,会出现以下问题:

java.io.FileNotFoundException:/storage/emulated/0/Android/data/com.xxx/file/aghati.tmp:open failed:enoint(没有这样的文件或目录)


你说你下载到了..../Android/data/com.xxx/file/folder。那么在这个故事中/mnt/sdcard来自哪里?只要下载到…/Android/data/com.xxx/file/folder,你就会没事了。@blackapps我编辑了这个问题。请再次检查。@blackapps他说,一些用户在使用SDK版本26更新到新版本后,无法在/Android/data/com.xxx/file/folder上下载并获取java.io.FileNotFoundException异常。
/storage/emulated/0/Android/data/com.xxx/file/aghati.tmp
不清楚此路径是什么。它是指向aghati.tmp文件夹的路径吗?或者aghati.tmp应该是文件夹“/storage/emulated/0/Android/data/com.xxx/file”中的文件吗?如果是后者:文件夹“/storage/emulated/0/Android/data/com.xxx/file”是否存在?您在尝试下载之前检查了吗?您有一个/文件夹。通常你会有一个/files文件夹。为什么s失败?@blackapps aghati.tmp“文件”文件夹中有一个文件。但当我打开和关闭存储权限时,问题解决了。你说你下载到了..../Android/data/com.xxx/file/folder。那么在这个故事中/mnt/sdcard来自哪里?只要下载到…/Android/data/com.xxx/file/folder,你就会没事了。@blackapps我编辑了这个问题。请再次检查。@blackapps他说,一些用户在使用SDK版本26更新到新版本后,无法在/Android/data/com.xxx/file/folder上下载并获取java.io.FileNotFoundException异常。
/storage/emulated/0/Android/data/com.xxx/file/aghati.tmp
不清楚此路径是什么。它是指向aghati.tmp文件夹的路径吗?或者aghati.tmp应该是文件夹“/storage/emulated/0/Android/data/com.xxx/file”中的文件吗?如果是后者:文件夹“/storage/emulated/0/Android/data/com.xxx/file”是否存在?您在尝试下载之前检查了吗?您有一个/文件夹。通常你会有一个/files文件夹。为什么s失败?@blackapps aghati.tmp“文件”文件夹中有一个文件。但当我打开和关闭存储权限时,问题就解决了。
 public DownloadFileFromURL(Context _mContext) {
    super(_mContext, R.layout.dialog_download_page);
    isCompleted = false;
    _PatchSave=getPathOfSaveFile();
    setMatchFile(_PatchSave, _NameFile, _passOFFile);

    saveFile(patchSaveTMP);

}


public File getPathOfSaveFile(Context mContext) {

        file = mContext.getExternalFilesDir(null);

    if (!file.exists())
        file.mkdirs();

    return file;
}

private void setMatchFile(String _PatchSave, String _NameFile, String _passOFFile) {
    patchSaveTMP = _PatchSave;

    File file = new File(patchSaveTMP);
     file.mkdirs();
    String nameFile = "/" + _NameFile;

    patchSave = patchSaveTMP + nameFile + "." + _passOFFile;
    patchSaveTMP = patchSaveTMP + nameFile + ".tmp";

}