Apagando arquivos

Olá pessoal,

Preciso criar uma classe Java que apague os arquivos de um diretório de tempos em tempos.
Alguém sabe como fazer isso?

Katy

Olá!

A dúvida é como deletar o arquivo ou como fazer isso de tempos em tempos?
E que tempo é esse?

:grin:

vc consegue isso em 3 passos:

  1. crie um java.io.File passando o caminho da pasta que contem os arquivos a serem deletados;

  2. pegue os arquivos desta pasta com o método listFiles();

  3. percorra o array de File chamando o método delete();

pra rodar de tempos em tempos coloque a chamada do método dentro de um loop infinito com uma linha de Thread.sleep(periodo);

Outra alternativa ao 3º passo do “viecili”: use javax.swing.Timer e coloque o codigo pra deletar no ActionListener dele e defina o tempo entre os eventos…

Olá Pessoal muito obrigada pelas respostas.
Eu resolvi meu problema assim :grin:
public class Apagando
{
private void deleteFiles (String dirName)
{
File myFile = new File (dirName);
System.out.println(myFile);
String[] children = myFile.list();
for (int i=0; i<children.length; i++)
{
(new File(dirName + children[i])).delete();
}
System.out.println(“Arquivos apagados!”);
}

public static void main(String[] args) 
{
    int delay = 1000;   // delay for 1 sec.
    int period = 43200000;  // repeat every 12h.
    
    Timer timer = new Timer();
    
    try
    {
        timer.scheduleAtFixedRate(new TimerTask() 
        {
        	public void run() 
        	{
        		Apagando apa = new Apagando();
                apa.deleteFiles("C:/public/");
                Date dt = new Date();
                System.out.println(dt);
            }
        }, delay, period);
    }
    catch(Exception e)
    {
        System.out.print("Não foi possivel apagar os arquivos"+"\n");
        e.printStackTrace();
    }
    
}

}