我有包含&包含明确facility.I保存backupdatabse这样Android的外部存储目录删除
DBBackup -- dir
2012-01-25 -dir
userventura.db -file
2012-01-25 -dir
userventura.db -file
像明智我救日常数据库备份设施android应用。
问题是删除目录。例如,如果用户选择日期2012-01-28这个,那么它需要删除以前的目录。换句话说,与用户选择日期&的目录日期相比,它会删除这些文件。
我的问题是我无法删除Directory.It删除文件userventura.db
。
private class ExportDatabaseFileTask extends AsyncTask<String, Void, Boolean> {
private final ProgressDialog dialog = new ProgressDialog(getDialogContext());
String strDate = disdbClrDate.getText().toString();
protected void onPreExecute() {
this.dialog.setMessage("MicroSD card Clear..");
this.dialog.show();
}
protected Boolean doInBackground(final String... args) {
File exportDir = new File(Environment.getExternalStorageDirectory(), "databaseBaup/");
if (!exportDir.exists()) {
exportDir.mkdirs();
}
try {
String[] sample = exportDir.list();
for(int i =0;i < sample.length;i++){
File dirc = new File(exportDir, sample[i]);
File file = new File(exportDir, sample[i]+"/userventura.jpeg");
if(dirc.getName().compareTo(strDate)<=0){
try {
boolean st = file.delete();
boolean dirStatus = dirc.delete();
System.out.println("===st=="+st);
System.out.println("===dirStatus=="+dirStatus);
if(dirc.isDirectory()){
boolean bs = file.delete();
System.out.println("==bs=="+bs);
boolean dircStatus = dirc.delete();
System.out.println("===dircStatus=="+dircStatus);
}
}catch (SecurityException se) {
se.printStackTrace();
}catch (Exception e) {
e.printStackTrace();
}
}
}
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
protected void onPostExecute(final Boolean success) {
if (this.dialog.isShowing()) {
this.dialog.dismiss();
}
if (success) {
Toast.makeText(DBClearActivity.this, "Micro SD card has been clear data successful!", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(DBClearActivity.this, "Clear data failed", Toast.LENGTH_SHORT).show();
}
Intent i = new Intent(getBaseContext(), DbBackupMainActivity.class);
View vi = SettingActivityGroup.group.getLocalActivityManager().startActivity("SettingScreenActivity", i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
SettingActivityGroup.group.replaceView(vi);
}
}
dirStatus
总是返回false,但此行返回true boolean st = file.delete();
请帮我...
Just this [link](http://stackoverflow.com/questions/5701586/delete-a-folder-on - SD卡),只有链接会做。 – 2012-01-30 07:42:23