Buscador en java

oscarmoal
12 de Febrero del 2008
Hola Amigos!

Vengo a solicitar su ayuda, tengo una función que muestra los archivos de un directorio cuya extensión coincide con el día del año, el problema que tengo es que de esa lista quiero recoger la información de cada uno de esos archivos y almacenarla en otro archivos, es decir, supongamos que se muestran los siguientes archivos, archivo1.043, archivo2.043, etc., una vez que los muestra proceda a abrirlos secuencialmente y después que los lea uno por uno traslade la información a otros archivos, ejemplo, el archivo1.043 una vez leido guarde el contenido en el archivo1.txt, y lo mismo con archivo2.043, hasta el acabe con todos los archivos listados al inicio. También me gustaría implementar un contador de tiempo en el que una vez transcurridos 5 segundos, vuelva a ejecutar la rutina de búsqueda y comience el proceso nuevamente.

El código de la búsqueda es el siguiente:

import java.io.*;
import java.util.Calendar;

public class FileDemo
{
public static void findFiles(File file, FileFilter filter, PrintStream output) throws IOException
{
if (file.isDirectory())
{
File[] list = file.listFiles();
for (int i=list.length; --i>=0;)
{
findFiles(list[i], filter, output);
}
} else
{
if (filter.accept(file))
output.println(file);
}
}
public static void main(String[] args)
{
class NameFilter implements FileFilter
{
private String mask;
NameFilter(String mask)
{
this.mask = mask;
}
public boolean accept(File file)
{
return (file.getName().indexOf(mask)!=-1)?true:false;
}
}
Calendar cal = Calendar.getInstance();
int doy = cal.get(Calendar.DAY_OF_YEAR);
String ext = String.valueOf(doy);
int len = ext.length();
if (len < 3)
ext = "0" + ext;
File pathFile = new File(".");
String filterString = "." + ext;
System.out.println(ext);
try {
FileFilter filter = new NameFilter(filterString);
findFiles(pathFile, filter, System.out);
} catch(Exception e)
{
e.printStackTrace();
}
System.out.println("work finished");
}
}


Por su atención gracias.