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á 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?
vc consegue isso em 3 passos:
crie um java.io.File passando o caminho da pasta que contem os arquivos a serem deletados;
pegue os arquivos desta pasta com o método listFiles();
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
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();
}
}
}