2013-03-29 20 views
6

Nie mogę usunąć pliku z sdcard.Usunięcie pliku Androida nie działa

File toDelete = new File(fname); 
boolean result=toDelete.delete(); 

Rezultatem jest fałszywa. Czyta i zapisuje ten sam plik działa w tej samej uruchomionej aplikacji. Brak otwartych strumieni. Nie zgłoszono żadnych wyjątków. Próbowałem zrobić to zapisywalny tuż przed usunięciem ten sposób

toDelete.setWritable(true); 

bez skutku. Jak to możliwe, że system może pisać i czytać, ale nie może usunąć tego samego pliku ???

+1

Zarzuty dodają trochę więcej kodu o tym, jak zbudować ścieżkę do pliku – Trinimon

+0

Mogę odczytać i zapisać ten plik, nie ma problemów ze ścieżką ani uprawnieniami, system po prostu odrzuca, aby go usunąć – Catherine

+0

Myślę, że tworzymy plik programowo lub runtime ?? mam rację? –

Odpowiedz

3

użycie poniższego kodu może ci pomóc.

  File fdelete = new File(file_dj_path); 
     if (fdelete.exists()) { 
      if (fdelete.delete()) { 
       System.out.println("file Deleted :" + file_dj_path); 
      } else { 
       System.out.println("file not Deleted :" + file_dj_path); 
      } 
     } 

Odśwież galeria po kasowania obrazu

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, 
Uri.parse("file://" + Environment.getExternalStorageDirectory()))); 

sprawdzić to: https://stackoverflow.com/a/10716773/1168654

+0

Cześć! Dziękuję za odpowiedź, ale plik nie jest cały czas usuwany i pozostaje na karcie SD, jak widzę ./adb shell – Catherine

+0

czy możesz pokazać nam swój kod o ścieżce do pliku w twoim pytaniu .. ?? –

1

Spróbuj zrobić to

File fileToDelete = new File(YourPath); 
boolean deleted = fileToDelete.delete(); 

Zamontować kartę ponownie i sprawdzić

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, 
        Uri.parse("file://" 
           + Environment.getExternalStorageDirectory()))); 
+0

Ten sposób nie działa – Catherine

Powiązane problemy