18 diciembre 2013

JAVA: Eliminar archivos de tamaño X de un directorio

import java.io.File; /** * @file EliminarArchivosErroneosRecursivamente.java * @version 1.0 * @author Linea de Codigo (http://lineadecodigo.com) * @date 26-diciembre-08 * @url http://lineadecodigo.com/2008/12/27/listar-un-directorio-de-forma-recursiva-en-java * @description Lista el contenido de un directorio de forma recursiva, de tal forma que vayamos * conociendo el contenido de sus directorios anidados. */ public class EliminarArchivosRecursivamente { public static int borrados=0; public static void listarDirectorio(File f, String separador) { File[] ficheros = f.listFiles(); int tamano=2; for (int x=0;x<ficheros.length;x++) { if(!ficheros[x].isDirectory() && (ficheros[x].length()/1024 ) < tamano ) { ficheros[x].delete(); System.out.println("Borrado("+borrados+"): "+ ficheros[x].getName() + " -- Tamaño: " +ficheros[x].length()/1024 + " KB."); borrados++; } if (ficheros[x].isDirectory()) { System.out.println(separador + ficheros[x].getName()); String nuevo_separador; nuevo_separador = separador + " "; listarDirectorio(ficheros[x],nuevo_separador); } } } public static void main(String[] args) { String sDirectorio = "c:\\curvas"; File directorio = new File(sDirectorio); listarDirectorio(directorio,""); } } Objetivo: Eliminar TODOS los archivos cuyo tamaño sea menor a 2 KB, del directorio "C:/curvas