检查android的sdcard上是否存在目录

Alx*_*ndr 53 directory android android-sdcard

如何检查android中的SD卡上是否存在目录?

syn*_*nic 116

常规Java文件IO:

File f = new File(Environment.getExternalStorageDirectory() + "/somedir");
if(f.isDirectory()) {
   ....
Run Code Online (Sandbox Code Playgroud)

可能还想检查f.exists(),因为如果它存在,并isDirectory()返回false,你将遇到问题.还有isReadable()......

在这里为您可能会发现更多有用的方法.

  • 只是注意,getExternalStorageDirectory()可能实际上并不指向物理sd_card,它可能指向内部存储.http://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory() (3认同)
  • @muhammad:它可能存在,只是一个文件,而不是一个目录. (2认同)

Mar*_*k B 40

File dir = new File(Environment.getExternalStorageDirectory() + "/mydirectory");
if(dir.exists() && dir.isDirectory()) {
    // do something here
}
Run Code Online (Sandbox Code Playgroud)

  • 是否有必要同时检查 `exists()` 和 `isDirectory()` 吗?我的意思是,如果我们使用其中任何一个呢? (2认同)

小智 13

以下代码也适用于java文件:

// Create file upload directory if it doesn't exist    
if (!sdcarddir.exists())
   sdcarddir.mkdir();
Run Code Online (Sandbox Code Playgroud)