2013-03-27 60 views
0

我用这个代码:如何删除SD卡中的文件?

String path = "mnt/sdcard/ten-file.mp3"; 
File file = new File(path); 
boolean result = file.delete(); 

但它不会删除该文件。有什么建议?

+2

所以硬编码。我建议您使用[Enviroment.getExternalStorageDirectory()](http://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory())类。 – Sajmon 2013-03-27 18:48:32

回答

0
String fileName = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "ten-file.mp3"; 
File soundFile = new File(fileName); 
if (soundFile.exists()) 
{ 
    boolean result = file.delete(); 
}  

清单许可

uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" 
+0

谢谢!!!!!!!!!!!! – xuanthucit 2013-03-27 20:25:10

1

你要确保该文件存在实际删除文件前:

File file = getBaseContext().getFileStreamPath("/sdcard/appname/data.xml"); 
if(file.exists()) { 
    boolean result = file.delete() 
} 

我觉得跟你原来的代码的问题是,你并没有真正测试以确保文件存在。你刚刚创建了一个文件变量,然后告诉它删除它。我提到了以下问题从个人谁也有类似的问题您:

Android how to check if file exist and else create one?

+0

感谢您的帮助.... – xuanthucit 2013-03-29 17:16:01