Deletar arquivos

Preciso deletar todos os arquivos de uma pasta que tenham parte do nome em comum.
Exemplo excluir todos os arquivos “alfa*.txt”.
Alguém sabe??
Obrigado.

A classe File tem um método que te retorna um array de File com o padrão de noem desejado. Aí é só fazer um for() e ir deletando.

fiz assim, está funcionando mas não ficou muito bonito
eu queria saber como defino “cb*.jpg” para não precisar usar getName().toString().indexof("")…

dir = new java.io.File(“c:/temp1”);
java.io.File[] arq = dir.listFiles();

for (int i = 0; i < arq.length; i++)
{
if (arq[i].isFile())
{
if ( (arq[i].getName().toString().indexOf(“cb”)>=0) && (arq[i].getName().toString().indexOf(".jpg")>=0) )
arq[i].delete();
}
}

Vc tem que implementar a interface java.io.FileNameFilter.

Encontrei no google uma implementação q parece ser o q vc precisa:

http://www.jzoo.com/java/wildcardfilter/

[code]/**

  • This class implements a FilenameFilter, intended to filter the

  • files listing.

  • @author daniel destro do carmo
    */
    class FilenameFilterImpl implements FilenameFilter {
    private String filterPattern = null;

    public FilenameFilterImpl(String filterPattern) {
    super();
    this.filterPattern = filterPattern;
    }

    public boolean accept(File directory, String filename) {
    //you can optimize this filter if desired.
    //I was God damn lazy today, I confess… My fault!
    if( filename.endsWith(filterPattern) ) return true;
    return false;
    }
    }[/code]

File directory = new File(“C:”);
FilenameFilter filter = new FilenameFilterImpl( “txt” );
File[] filteredFiles = directory.listFiles( filter );

Cara da uma olhada neste codigo, eu usei uma vez para filtra um diretorio, eu to usando o FileNameFilter.

[code]// Filtro

public class Filtro implements FilenameFilter {
protected String extensaoArquivo;

public Filtro(String extensao){
	this.extensaoArquivo = "." + extensao;
}


/* (non-Javadoc)
 * @see java.io.FilenameFilter#accept(java.io.File, java.lang.String)
 * Valida se o Final do Nome do Arquivo é igual a Extensão passada
 */
public boolean accept(File arg0, String nomedoArquivo) {
	return(nomedoArquivo.endsWith(this.extensaoArquivo));		
}

}

// Classe que le os arquivos utilizando o Filtro

public class LerArquivos{

public static void main(String[] args) {
	FilenameFilter filtro = new Filtro("txt");
	File conteudoDiretorio = new File("c:");
	File arquivos[] = conteudoDiretorio.list(filtro);

	for(int i = 0; i < arquivos.length; i++){
		System.out.println(arquivos[i]..getName());
	}
}

}[/code]

De uma olhada na documentacao do FileNameFilter é muito simples, espero ter ajudado

P.s.: Ptz, enquanto eu digitava o danieldestro ja mandou uma resposta, hauhauhaua

você foi lerdo cara… haahahaahha
estou um passo à frente no mercado de trabalho… haahahha

brincadeirinha!