Here you can find the source of delete(File file)
public static void delete(File file) throws IOException
//package com.java2s; //License from project: Open Source License import java.io.*; public class Main { public static void delete(File file) throws IOException { if (file.isDirectory()) { File[] files = file.listFiles(); if (files != null) { for (File each : files) { delete(each);/*from www . j av a2 s . c om*/ } } } for (int i = 0; i < 10; i++) { if (file.delete() || !file.exists()) return; try { Thread.sleep(10); } catch (InterruptedException ignore) { } } if (file.exists()) throw new IOException("Cannot delete file " + file); } }