Partilhar via


Como: Localizar arquivos com um padrão específico no Visual Basic

O GetFiles método retorna uma coleção somente leitura de cadeias de caracteres que representam os nomes de caminho para os arquivos. Você pode usar o wildCards parâmetro para especificar um padrão específico. Se você quiser incluir subdiretórios na pesquisa, defina o searchType parâmetro como SearchOption.SearchAllSubDirectories.

Uma coleção vazia será retornada se nenhum arquivo correspondente ao padrão especificado for encontrado.

Nota

Para obter informações sobre como retornar uma lista de arquivos usando a DirectoryInfo classe do System.IO namespace, consulte GetFiles.

Para localizar arquivos com um padrão especificado

  • Use o GetFiles método, fornecendo o nome e o caminho do diretório que você deseja pesquisar e especificando o padrão. O exemplo a seguir retorna todos os arquivos com a extensão .dll no diretório e os adiciona ao ListBox1.

    For Each foundFile As String In My.Computer.FileSystem.GetFiles(
        My.Computer.FileSystem.SpecialDirectories.MyDocuments,
        Microsoft.VisualBasic.FileIO.SearchOption.SearchAllSubDirectories, "*.dll")
    
        Listbox1.Items.Add(foundFile)
    Next
    

Segurança do .NET Framework

As seguintes condições podem causar uma exceção:

  • O caminho não é válido por um dos seguintes motivos: é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco, contém caracteres inválidos ou é um caminho de dispositivo (começa com \\.\) (ArgumentException).

  • O caminho não é válido porque é Nothing (ArgumentNullException).

  • directory não existe (DirectoryNotFoundException).

  • directory aponta para um ficheiro existente (IOException).

  • O caminho excede o comprimento máximo definido pelo sistema (PathTooLongException).

  • Um nome de arquivo ou pasta no caminho contém dois pontos (:) ou está em um formato inválido (NotSupportedException).

  • O usuário não tem as permissões necessárias para visualizar o caminho (SecurityException).

  • O usuário não tem as permissões necessárias (UnauthorizedAccessException).

Consulte também