我正在开发一个 Android 应用程序。我还在学习android。但我在检查下载文件夹中的文件是否存在时遇到问题。它总是返回 false。但该文件确实存在。
这是CommonHelper类中检查文件是否存在的函数
public static boolean fileExists(String path)
{
File file = new File(path);
if(file.exists())
{
return true;
}
else{
return false;
}
}
这就是我检查内置下载文件夹中的文件的方式
if(CommonHelper.fileExists(String.valueOf(Environment.DIRECTORY_DOWNLOADS)+"/"+cursor.getString(1)))
{
//do other stuffs here
}
我的代码有什么问题吗?
最佳答案
问题是,您没有获得完整路径。
尝试使用Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)
获取路径
public static boolean fileExists(File path, String filename){
return new File(path, filename).exists();
}
然后调用:
CommonHelper.fileExists(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS), cursor.getString(1));
编辑:请注意,getExternalStoragePublicDirectory
也可以是其他内容,例如 getExternalStorageDirectory()
,具体取决于您实际存储文件的位置。
关于java - 在 Android 中检查文件是否存在不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35313215/