Tô precisando filtrar arquivos .gif,.jpg e .bmp de um diretorio. Alguem saberia me informar como? Ja olhei nas APIs mas nao entendi muito bem.
Preciso incluisive do tratamento de erro caso nao exista imagens destes tipos ou diretorio esteja vazio.
Filedir=newFile("directoryName");Stringarqs[]=dir.list();if(arqs==null){// n eh pasta ou n existethrowsnewException();}else{for(inti=0;i<arqs.length;i++){// aki eh soh verificar se eh nas extensoes q vc querif(arqs[i].endsWith(".gif")||arqs[i].endsWith(".jpg")||...){...}}}
Neste exemplo ele abri uma janela que só aparece imagens e o melhor de tudo ainda amostra a figura de ao lado (tamanho pequeno).
Mas se não quiser usar swing então faça como Felipe amostrou só lhe dou um conselho modularize na parte do if dentro do for e o else do primeiro if não é necessário, pois se entrar no if ele sairá do método ao lançar a exceção, dessa maneira seu codigo ficará mais fácil de modificar.
Blz! Ja fiz isso e funcionou. Agora to precisando verificar se a pasta existe e esta vazia… Comparando array == null ele me fala se pasta existe ou nao eh uma pasta, estou certo? Mas e pra saber se ela esta vazia?
Valeu...:razz:
H
hugoffPJ
Filefile=newFile("diretorio");file.exists();// verifica se existe e retorna um booleanfile.isDirectory();// verifica se é um diretorio (pode ser um arquivo)// pra saber se está vazio eu não sei mas da uma olhada na classe File
flw.
M
mactirePJ
Pessoal!
Pra saber se a pasta está vazia eu comparei com zero o length do array que recebe o retorno do list(), ja que se a pasta esta vazia o list() retorna um array vazio. Assim: