【发布时间】:2011-02-07 04:47:25
【问题描述】:
在android中如何检查sdcard上是否存在目录?
【问题讨论】:
标签: android directory android-sdcard
在android中如何检查sdcard上是否存在目录?
【问题讨论】:
标签: android directory android-sdcard
常规Java文件IO:
File f = new File(Environment.getExternalStorageDirectory() + "/somedir");
if(f.isDirectory()) {
....
可能还想检查f.exists(),因为如果它存在,并且isDirectory() 返回false,你就会遇到问题。还有isReadable()...
查看here 了解更多可能有用的方法。
【讨论】:
File dir = new File(Environment.getExternalStorageDirectory() + "/mydirectory");
if(dir.exists() && dir.isDirectory()) {
// do something here
}
【讨论】:
exists()和isDirectory()?我的意思是,如果我们使用其中任何一种呢?
我在检查文件/目录时犯了错误。事实上,您只需致电isFile() 或isDirectory()。这是docs
如果您曾经拨打过isFile() 或isDirectory(),则无需拨打exists()。
【讨论】:
以下代码也适用于 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;
}
使用如下函数:
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!!'
}
【讨论】:
是的,尝试了很多,下面的代码对我有帮助:)
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();
}
【讨论】: