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.