Verificando se o arquivo existe

  • Olá, boa sexta a todos…
  • Gostaria de uma ajuda, eu quero verificar se um arquivo existe, mais não pelo nome inteiro
    por exemplo, tem uma pasta com os seguintes arquivos: projeto1-000.txt, projeto1-001.txt, projeto1-002.txt, projeto1-003.txt, projeto2-150.txt
    ai eu gostaria de verificar se te arquivos que começam com : “projeto1”, se tiver eu pego se alguém puder dar uma ajuda agradeceria.
  • Agradecido. PedroCarvilhe.

Liste os arquivos desse diretório, e veja quais deles batem com o padrão de nomes que você estabelecer.

Um exemplo (equivale a dar um “dir projeto1*”)

File diretorio = new File ("c:\\users\\pedro\\desktop");
File[] arquivos = diretorio.listFiles ();
for (File arquivo : arquivos) {
    String nome = arquivo.getName();
    if (nome.toLowerCase().startsWith ("projeto1")) {
        System.out.println (arquivo); 
    }
}

ta dando um erro: A sintaxe do nome do arquivo, do nome do diretório ou do rótulo do volume está incorreta.

Bom, aí é com você, porque essa é uma mensagem do próprio Windows. Acho que você conheça o Windows suficientemente para saber como é um nome de diretório válido :slight_smile:

diretório é valido sim, tanto é que eu to conseguindo fazer o que eu quero mais mesmo assim ele da o erro depois de verificar todos que começam com projeto1.

Pelo que imagino, você tem um diretório com espaços no meio do nome e está passando o pathname completo (com espaços e tudo) para um comando externo processar, certo? Senão não teria uma mensagem do Windows em português.

Se você quiser ser mais específico, por exemplo…

Ao invés de procurar:

projeto1
projeto2
projeto3

Você pode procurar fazer algo que procure todos:

projeto1
trabalho1
texto1
teste1
exemplo1

Coloque sua pesquisa para receber um Scanner ou um JOptionPane(Input)