2011-11-17 97 views
0

我想从内部存储删除我的文件文件夹,但我使用的代码实际上并不工作。任何想法为什么?从内部存储器Android删除文件文件夹不工作

Button login = (Button) findViewById(R.id.login_btn); 
     login.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       String name = "/data/data/"+context.getPackageName()+"/files/"; 
       Log.e("","path : "+name); 
       File myDir = new File(name); 
       myDir.delete(); 
       boolean iff = myDir.delete(); 
       Log.e("","iff : "+iff); 
      } 
     }); 

我按一下按钮后得到的结果:

11-17 13:09:58.869: E/(15952): path : /data/data/com.android.test/files/ 
11-17 13:09:58.869: E/(15952): iff : false 
+0

您是否在menifest中设置了适当的权限? –

+0

请看你对上一个问题的回答。 – user370305

回答

7

您两次删除文件,只检查第二删除的返回值。

如果一个文件不存在,并且你调用delete(),你会得到“false”结果(文件没有被删除,因为它不存在)。

+1

另外检查if file.exists(); – ingsaurabh

+0

我没有注意到我将删除该文件两次。谢谢! –

2

File.delete()只会删除空目录。 您需要(递归地)首先删除目录的内容。 已经回答here。 (因为这是一个很好的答案,我不是在复制粘贴该答案到这里)

相关问题