检查 SD 卡特定文件夹中的文件

check if file on sdcard specific folder

我正在尝试简单地检查文件是否存在。我在这里看到了类似的问题,但没有帮助。 我写了一些代码来检查文件是否存在

private String checkIfFileExist(String fileName) {
    String root_sd = Environment.getExternalStorageDirectory().toString();
    File file = new File(root_sd + "/myfolder");
    if (file != null) {
        File list[] = file.listFiles();
        if (list != null && list.length > 0) {
            for (int i = 0; i < list.length; i++) {
                if (list[i].getName().equals(fileName)) {
                    return list[i].getName();
                }
            }
        }
    }
    return null;
}

我尝试检查文件是否不存在,然后在这个 folder.I 中保存一些文件 我的文件夹中有 problem.for 示例 我有 myimage.png 文件,但我的代码无法正常工作,因为myimage.png 也下载了,我有两个文件 myimage.png 和 mypng-1.png 我不知道我的代码有什么问题

试试这个

String path=<YOUR FOLDER PATH + APPEND FILE NAME>;
File newfile=new File(path);
 if (newfile.exists())
 {
  //Do your task
 }

或者干脆

private String checkIfFileExist(String fileName) {
   String root_sd = Environment.getExternalStorageDirectory().toString();
   String root_sd = Environment.getExternalStorageDirectory().toString();
   File file = new File(root_sd + "/myfolder/"+filename);
   if (file.exists())
    {
      return file.getName();
    }else
    {
     return null;
    }
  }

希望对你有帮助

   File file = new File(root_sd + "/myfolder");
if (file.exists()) {
    File list[] = file.listFiles();
    if (list != null && list.length > 0) {
        for (int i = 0; i < list.length; i++) {
            if (list[i].getName().equals(fileName)) {
                return list[i].getName();
            }
        }
    }

试试下面的代码,它对我有用。

  File file = new File(Environment.getExternalStorageDirectory().getPath() + "/myfolder/" + filename);
     if (path.exists()) {
    //do what ever you need to do
    }

您还应该检查文件名。

File file = new File(root_sd + "/myfolder/"+filename);
if (file.exists()){
 // write your logic for  file exist here 
}else {
//write your logic for  file does not exist  here 
}