Icono del sitio Programando a medianoche

Eliminar múltiples archivos en Java (y Android)

Una de las features que extraño al trabajar en Java (por consiguiente, también en Android) es la posibilidad de eliminar múltiples archivos dependiendo de un «wildcard», por ejemplo, borrar todos los apk de una carpeta utilizando «*.apk».
Por eso les paso una función que utilizo para esta tarea:

/**
 * Elimina los archivos con una determinada extensión de una carpeta
 * @param path Carpeta de la cual eliminar los archivos
 * @param extension Extensión de los archivos a eliminar
 */
public static void eliminarPorExtension(String path, final String extension){
    File[] archivos = new File(path).listFiles(new FileFilter() {
        public boolean accept(File archivo) {
            if (archivo.isFile())
                return archivo.getName().endsWith('.' + extension);
            return false;
        }
    });
    for (File archivo : archivos)
        archivo.delete();
}

Obviamente la función se puede modificar para eliminar los archivos que comiencen con un nombre específico o incluso para utilizar una expresión regular para seleccionar qué archivos eliminar.
Espero les sirva.
Suerte!

Salir de la versión móvil