为什么file.exists()在android java中不工作

为什么file.exists()在android java中不工作,android,android-file,Android,Android File,我的应用程序下载文件并将其保存在下载文件夹中。现在,当我想检查文件是否存在时,file.exists()不起作用。我找了很多。在stackoverflow和其他网站中创建了许多主题,但对我来说没有任何效果,所以请不要删除此问题并报告我 这是我的代码: String fname = Environment.DIRECTORY_DOWNLOADS + "/Dehkadeh/" +messageData.getMessage1(); File file =

我的应用程序下载文件并将其保存在下载文件夹中。现在,当我想检查文件是否存在时,
file.exists()
不起作用。我找了很多。在stackoverflow和其他网站中创建了许多主题,但对我来说没有任何效果,所以请不要删除此问题并报告我

这是我的代码:

String fname = Environment.DIRECTORY_DOWNLOADS + "/Dehkadeh/" +messageData.getMessage1();
            File file = new File(fname);


            if (file.exists()){
                imgDownload.setImageResource(R.drawable.ic_doc3);
                imgDownload.setContentDescription("after");
            }
当我使用
file.isFile()
file.isDirectory()
时,它们也返回false

这是fname的值:Download/Dehkadeh/reyhoon.txt


我检查了该文件,该文件已存在,android向我显示了其路径和名称。

您是否尝试在您的AndroidManifest.xml中添加android:requestLegacyExternalStorage=“true”?@tadev是的,我在中添加了它manifest@HoomanHooshyar你试过file.getAbsoluteFileName.exists吗?@Keshav1234是的,我也检查过了。现在我查了另一件事。这个条件也是假的:如果(file.isFile())!!!为什么?
这是fname的值:Download/Dehkadeh/reyhoon.txt
对于Android设备来说,这是一条不存在且不可能的路径
和android向我显示了它的路径和名称。
我很惊讶android会显示这一点。