检查目录是否存在于Android的SD卡上
如何检查在android的SD卡上是否存在一个目录?
常规Java文件IO:
File f = new File(Environment.getExternalStorageDirectory() + "/somedir"); if(f.isDirectory()) { ....
也许还想检查f.exists()
,因为如果它存在,并且isDirectory()
返回false,则会出现问题。 还有isReadable()
…
点击这里查看更多有用的方法。
File dir = new File(Environment.getExternalStorageDirectory() + "/mydirectory"); if(dir.exists() && dir.isDirectory()) { // do something here }
下面的代码也适用于java文件:
// Create file upload directory if it doesn't exist if (!sdcarddir.exists()) sdcarddir.mkdir();
一般用这个函数检查是否存在Dir:
public boolean dir_exists(String dir_path) { boolean ret = false; File dir = new File(dir_path); if(dir.exists() && dir.isDirectory()) ret = true; return ret; }
使用function如下:
String dir_path = Environment.getExternalStorageDirectory() + "//mydirectory//"; if (!dir_exists(dir_path)){ File directory = new File(dir_path); directory.mkdirs(); } if (dir_exists(dir_path)){ // 'Dir exists' }else{ // Display Errormessage 'Dir could not creat!!' }
我犯了错误的检查文件/目录。 的确,你只需要调用isFile()
或isDirectory()
。 这里是文档
如果您调用isFile()
或isDirectory()
则不需要调用exists()
isDirectory()
。
烨试了很多,在代码帮助我:)
File folder = new File(Environment.getExternalStorageDirectory() + File.separator + "ur directory name"); if (!folder.exists()) { Log.e("Not Found Dir", "Not Found Dir "); } else { Log.e("Found Dir", "Found Dir " ); Toast.makeText(getApplicationContext(),"Directory is already exist" ,Toast.LENGTH_SHORT).show(); }