我有包含&包含明確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