Apagando arquivos  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
katiuciaPJ
Smalltalk
[Avatar]

Membro desde: 29/07/2005 00:00:00
Mensagens: 2
Offline

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
[WWW] [ICQ]
GleidstanPJ
Debugger
[Avatar]

Membro desde: 16/02/2005 00:00:00
Mensagens: 69
Offline

Olá!

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

:grin:
[WWW] aim icon [ICQ]
vieciliPJ
JavaEvangelist
[Avatar]

Membro desde: 17/09/2004 00:00:00
Mensagens: 432
Offline

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);

http://
[WWW] aim icon [ICQ]
jaireltonPJ
GUJ Expert
[Avatar]

Membro desde: 06/06/2005 00:00:00
Mensagens: 3276
Offline

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...

http://jairelton.com.br
[WWW] aim icon [ICQ]
katiuciaPJ
Smalltalk
[Avatar]

Membro desde: 29/07/2005 00:00:00
Mensagens: 2
Offline

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();
}

}
}
[WWW] [ICQ]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team