Как удалить файл с SD-карты? - PullRequest
       113

Как удалить файл с SD-карты?

128 голосов
/ 08 августа 2009

Я создаю файл для отправки в виде вложения в электронное письмо. Теперь я хочу удалить изображение после отправки электронного письма. Есть ли способ удалить файл?

Я пробовал myFile.delete();, но файл не был удален.


Я использую этот код для Android, поэтому язык программирования - Java, использующий обычные для Android способы доступа к SD-карте. Я удаляю файл методом onActivityResult, когда Intent возвращается на экран после отправки электронного письма.

Ответы [ 14 ]

0 голосов
/ 23 августа 2017

Вы можете удалить файл следующим образом:

File file = new File("your sdcard path is here which you want to delete");
file.delete();
if (file.exists()){
  file.getCanonicalFile().delete();
  if (file.exists()){
    deleteFile(file.getName());
  }
}
0 голосов
/ 02 июня 2017
File filedel = new File("/storage/sdcard0/Baahubali.mp3");
boolean deleted1 = filedel.delete();

Или попробуйте это:

String del="/storage/sdcard0/Baahubali.mp3";
File filedel2 = new File(del);
boolean deleted1 = filedel2.delete();
0 голосов
/ 13 мая 2017
private boolean deleteFromExternalStorage(File file) {
                        String fileName = "/Music/";
                        String myPath= Environment.getExternalStorageDirectory().getAbsolutePath() + fileName;

                        file = new File(myPath);
                        System.out.println("fullPath - " + myPath);
                            if (file.exists() && file.canRead()) {
                                System.out.println(" Test - ");
                                file.delete();
                                return false; // File exists
                            }
                            System.out.println(" Test2 - ");
                            return true; // File not exists
                    }
0 голосов
/ 02 ноября 2015

Это сработало для меня.

String myFile = "/Name Folder/File.jpg";  

String my_Path = Environment.getExternalStorageDirectory()+myFile;  

File f = new File(my_Path);
Boolean deleted = f.delete();
...