Obtener listado de archivos desde un directorio aplicando filtros visual basic .net

Muchas veces necesitamos obtener todos los archivos que se encuentren en un directorio, o simplemente algunos que posean alguna extensión o nombre en particular. A continuación les mostramos como realizar este proceso de manera fácil y efectiva.

Función para obtener lista de archivos


    Public Function obtenerArchivosDirectorio(ByRef rutaArchivo As String) As List(Of String)

        Dim listaRutas As List(Of String) = New List(Of String)
        Dim ruta As String

        ruta = rutaArchivo

        Dim rutas As String

        rutas = Dir(ruta)

        Do While rutas <> ""
            listaRutas.Add(Path.GetDirectoryName(rutaArchivo) + "\" + rutas)
            rutas = Dir()
        Loop

        Return listaRutas

    End Function

Formas de uso

Supongamos que el directorio C:\ contiene los siguientes elementos:

C:\Prueba.txt
C:\Archivo.txt
C:\Archivo.xls

Obtener todos los archivos


   obtenerArchivosDirectorio("C:\*.*")
 

el resultado será una lista con todos los elementos:

C:\Prueba.txt
C:\Archivo.txt
C:\Archivo.xls

Obtener todos los archivos con extensión .txt


   obtenerArchivosDirectorio("C:\*.txt")
 

el resultado será una lista con todos los elementos:

C:\Prueba.txt
C:\Archivo.txt

Obtener todos los archivos llamados Archivo sin importar la extensión


   obtenerArchivosDirectorio("C:\Archivo.*")
 

el resultado será una lista con todos los elementos:

C:\Archivo.txt
C:\Archivo.xls

Obtener solo el archivo llamados Archivo con extensión .txt


   obtenerArchivosDirectorio("C:\Archivo.txt")
 

el resultado será una lista con todos los elementos:

C:\Archivo.txt

Esperamos sea de su utilidad

Saludos

También te podría gustar...

5 Respuestas

  1. eugenio pedro montero gonzalez dice:

    Gracias Victor por tu información, me estoy iniciando en vs .NET
    y espero que tu buena y sencilla explicación me sirva ya te comentare.
    Yo lo que quiero es localizar el archivo y si no lo encuentra que me de un aviso msgbox en conforme no existe. Lo voy a intentar con tus datos y te comento

    gracias
    eugenio

  2. chinoafroo dice:

    Como puedo realizar una busqueda de archivos pero con filtro de solo los dos primeros caracteres, es decir, tengo 5 archivos pero solo 2 empiezan con «AR» quiero que esos dos se guarden en un array.