O método listFiles de um diretório retorna o conteúdo desse diretório. O método usa um filtro no parâmetro que seleciona os arquivos ou diretório a serem retornados. Um filtro que apenas retorna arquivos é implementado.
FileFilter fileFilter = new FileFilter() { public boolean accept(File file) { return file.isFile(); } }; File[] tab = file.listFiles( fileFilter );
O código deste exemplo lista o diretório no diretório v: / tmp. Primeiro, o código chama file.isDirectory () para validar que a pasta que estamos testando é um diretório. Ele cria um FileFilter retornando true somente se o objeto for um arquivo. O método listFiles é chamado com o filtro; o arquivo retornado na saída é gravado em System.out para confirmar a filtragem.
import java.io.File; import java.io.FileFilter; public class FolderListFiles { public static void main(String[] argv) { File file = new File("V:/tmp/"); if( file.isDirectory() ){ System.out.println( file.getName() + " " ); } FileFilter fileFilter = new FileFilter() { public boolean accept(File file) { return file.isFile(); } }; // File[] tab = file.listFiles( fileFilter ); System.out.println( "" ); for( File current : tab ){ System.out.println( current.getAbsolutePath() ); } } }
tmp V:\tmp\00012-capture.jpg V:\tmp\01805-capture.jpg V:\tmp\01807-capture.jpg