Listar ficheiros dentro da pasta

Boas pessoal,

Tenho uma directoria com a seguinte estrutura : C:\FicheirosRecebidos\ e destro desta pasta tenho varios ficheiros no formato .TXT

Gostaria de criar um metodo que me faça um System.out.print(); todos os ficheiros .TXT que estao contidos na pasta ou seja me listasse todos os ficheiros que estao dentro desta directoria. Mas gostaria que ele me listasse o nome destes ficheiros.

Obrigado desde ja !

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

class ListagemRecursiva {
    
    public void listar (File dir, List<File> arquivos) {
        if (dir.isDirectory()) {
            File[] sub = dir.listFiles();
            for (File f : sub) {
                if (f.isDirectory()) {
                    listar (f, arquivos);
                } else {
                    arquivos.add (f);
                }
            }
        }
    }
    

    public static void main (String[] args) {
        ListagemRecursiva lr = new ListagemRecursiva();
        List<File> arquivos = new ArrayList<File>();
        lr.listar (new File (args[0]), arquivos);
        // Imprimindo todos, sem exceção
        for (File f : arquivos) {
            System.out.println (f);
        }
        // Imprimindo apenas os arquivos .txt
        for (File f : arquivos) {
            if (f.isFile() && f.getName().toLowerCase().endsWith (".txt")) {
         	System.out.println (f);        
            }
        }
    }
}

[quote=thingol][code]
import java.io.;
import java.util.
;

class ListagemRecursiva {

public void listar (File dir, List<File> arquivos) {
    if (dir.isDirectory()) {
        File[] sub = dir.listFiles();
        for (File f : sub) {
            if (f.isDirectory()) {
                listar (f, arquivos);
            } else {
                arquivos.add (f);
            }
        }
    }
}


public static void main (String[] args) {
    ListagemRecursiva lr = new ListagemRecursiva();
    List<File> arquivos = new ArrayList<File>();
    lr.listar (new File (args[0]), arquivos);
    // Imprimindo todos, sem exceção
    for (File f : arquivos) {
        System.out.println (f);
    }
    // Imprimindo apenas os arquivos .txt
    for (File f : arquivos) {
        if (f.isFile() && f.getName().toLowerCase().endsWith (".txt")) {
     	System.out.println (f);        
        }
    }
}

}
[/code][/quote]

Thingol ruleia :!:

ps: Com a devida permissão, estou copiando este código :wink: