2013-08-04 4 views
-1

У меня такая же проблема, как в Android, delete files in my data directory?Удалить файл в каталоге данных

Но это не работает для меня.

String sourcefile = getFilesDir().toString() + "/aaa.jpk"; 
File file = new File(sourcefile); 
file.delete(); 

Это должен быть самый простой способ удалить этот файл, но каким-то образом я не могу этого сделать. Разрешения добавляются андроида манифеста:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 

так что не проблема. Эта строка приводит меня к записи:

data/data/com.example.program/files/aaa.jpk 

Где моя проблема на самом деле? Я не могу понять это.

Код для скачивания файла:

dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); 
Uri resource = Uri.parse("http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml"); 
DownloadManager.Request request = new DownloadManager.Request(resource); 
request.setAllowedNetworkTypes(Request.NETWORK_MOBILE | Request.NETWORK_WIFI); 
request.setDestinationInExternalFilesDir(getApplicationContext(), null, "aaa"); 
request.setAllowedOverRoaming(false); 
request.setTitle("a.xml"); 

dm.enqueue(request); 

ответ

1

Никогда не используйте конкатенацию, чтобы создать путь. Используйте File file=new File(getFilesDir(), "aaa.jpk"); и посмотрите, поможет ли это. Обратите внимание, что ваши права здесь неактуальны, поскольку вы работаете с внутренним хранилищем, а не с внешним хранилищем.

+0

благодарит за быстрый ответ. К сожалению, он не работает. Я пробовал так много, и ничего не работает. – JustPeter

+0

@ user2647384: Учитывая этот путь к файлу, вы также можете использовать 'deleteFile (" aaa.jpk ");'. Если вы не можете удалить файл, как вы его создали в первую очередь? – CommonsWare

+0

В первый раз я загружаю его программой, позже, когда я не смог удалить его, поэтому я подумал, что это может сработать с файлом, и я создам себя с помощью некоторого файлового обозревателя. Это тоже не сработало. код для загрузки файла в первом сообщении – JustPeter

1

не используя эмулятор терминала на укоренившейся телефон/планшет не свою проблему, просто «CD» в папку, содержащую файл, а затем «су», чтобы запросить доступ корня и «гт aaa.jpk» он удалит файл

HERE вы найдете подробную информацию о том, как использовать эмуляторы терминала и команды adb