Olá a todos, será que existe alguém que me possa ajudar?
A minha questão é esta:
Criei uma aplicação em java e, numa dada operação crio um ficheiro temporário, após o uso deste quero apaga-lo, mas, pelo file.delete() não consigo porque este ficheiro ainda está agarrado ao processo runtime, eu precisava de o apagar durante a mesma sessão em que este foi criado.
Como é que eu faço isso pelo java? Alguém me pode ajudar?
(Ao sair da minha aplicação o ficheiro é apagado, mas, eu queria que o ficheiro fosse apagado com a aplicação ainda a correr).
Um abraço
tenta apontar a variável file para um null depois de tentar o delete.
file.delete();
file = null;
Como você criou este arquivo temporário? Usou o método java.io.File.createTempFile(String prefix, String suffix)? Ou simplesmente criou algum tipo de FileWriter/FileOutputStream para criar o tal arquivo? Caso tenha optado pela segunda alternativa, verifique se você está fechando o stream antes de tentar remover o arquivo.
file.delete()
file=null, sim faço mas, como GC (garbage collect.) não é automatico
mesmo forçado o ficheiro ainda está em memória.
uso FileWriter/FileOutputStream efaço o close da stream, mas, vou explorar a alternativa java.io.File.createTempFile,
obrigado a todos,
um abraço
Carlos