private boolean deleteDirectory(File path) { File[] files = path.listFiles(); for (int i = 0; i < files.length; i++) { File f = files[i]; if (f.isFile()) { if (!f.delete()) { return false; } } else { if (!deleteDirectory(f)) { return false; } } } if (path.delete()) { return true; } else { return false; } }
private void processDeletionQueue() { final int maxToDelete = 2; int deleted = 0; Long toDelete; while (maxToDelete > deleted++ && (toDelete = fileDeletionQueue.dequeue()) != null) { // Attempt to delete file final File f = getExistingCacheFile(toDelete); if (f != null && !f.delete()) { f.deleteOnExit(); } } }
private boolean saveAndVerify(ZipInputStream data) throws IOException { try { ZipEntry ze; while ((ze = data.getNextEntry()) != null) { // Filename + reference to file. String filename = ze.getName(); File output = new File(local_path + filename); if (filename.endsWith("/")) { output.mkdirs(); } else { if (output.exists()) { // Delete the file if it already exists. if (!output.delete()) { return false; } } if (output.createNewFile()) { FileOutputStream out = new FileOutputStream(output); byte[] buffer = new byte[1024]; int count; while ((count = data.read(buffer)) != -1) { out.write(buffer, 0, count); } } else { return false; } } } } catch (Exception e) { e.printStackTrace(); return false; } finally { data.close(); } return true; }