Listar arquivos de um tipo especifico

Galera, existe uma forma de listar todos os arquivos de um diretorio com uma extenção especifica, ou algo como .txt*

[]s

Jupy

Você consegue listar todos os arquivos de um diretório? Se conseguir agora é brincar de ver o que há depois do último ponto.

Até!

Olá… deve ser mais ou menos isso

        File dir = new File ("c:\myDocuments");
        if (dir.isDirectory()) {
               String[] lista = dir.list();
               for (Integer i = 0; i < lista.length; i++){		
	      if(lista[i].substring(lista[i].length() - 4).equalsIgnoreCase(".txt")){
		String nome = lista[i].substring(0,lista[i].length() - 4);
                                System.out.println("achou um arquivo .txt de nome: " + nome);				

	       }
	}
         } 

deve ter jeitos melhores… mas esse funciona!!!
flwsss

espero ter ajudado

Se quiser pode usar tbm FilenameFilter.

http://java.sun.com/j2se/1.5.0/docs/api/java/io/FilenameFilter.html
http://www.java2s.com/Code/Java/File-Input-Output/FNFilterdirectorylisterusingFilenameFilter.htm

[]´s

Eu postei isto faz um certo tempo. Ele lista arquivos em um diretório e subdiretórios.

import java.util.*;
import java.io.*;

/**
* Faz algo parecido com "dir /s *.html" (no caso Windows) ou
* find . -name '*.html' -print (no caso Unix). 
* Cuidado: se houver um arquivo "XXX.HTML" (em maiúsculas) não vai
* reconhecer, a menos que você explicite na expressão regular.
*/
class ExemploDir {
    /**
            * @param startingDirectory O diretório inicial.
            * @param pattern Uma expressão regular que deve ser aplicada
            * ao nome do arquivo.
            */
    public List<File> findFiles (final File startingDirectory, final String pattern) {
        List<File> files = new ArrayList<File>();
        if (startingDirectory.isDirectory()) {
            File[] sub = startingDirectory.listFiles(new FileFilter() {
                public boolean accept (File pathname) {
                    return pathname.isDirectory() || pathname.getName().matches (pattern);
                }
            });
            for (File fileDir: sub) {
                if (fileDir.isDirectory()) {
                    files.addAll (findFiles (fileDir, pattern));
                } else {
                    files.add (fileDir); // 
                }
            }
        }
        return files;
    }
    /**
    * 
    */
    public static void main(String[] args) {
        ExemploDir ed = new ExemploDir();
        // Listando todos os arquivos "*.html"
        System.out.println (ed.findFiles (new File("."), ".*\.html"));
        // Listando todos os arquivos "*.java" ou "abs*.txt"
        System.out.println (ed.findFiles (new File("."), "(.*\.java|abs.*\.txt)"));
        // Listando todos os arquivos "*.htm*" (incluindo arquivos *.HTM) - útil para Windows
        System.out.println (ed.findFiles (new File("."), "(?i).*\.htm[^.]*"));
        // Listando todos os arquivos "*.htm*" e "*.jsp" 
        // (incluindo arquivos *.HTM e *.JSP) no diretório C:\INETPUB - útil para Windows
        System.out.println (ed.findFiles (new File("C:/INETPUB"), "(?i)(.*\.htm[^.]*|.*\.jsp)"));
    }
}