none
Como determinar si existe X extension dentro de un carpeta. RRS feed

  • Pregunta

  • Buenas tardes compañeros,

    como puedo saber mediante una condición si existe determina extensión de archivo.

    ejemplo dentro de una carpeta tengo archivos con extensión .exe .text .bat yo quiero saber si dentro de la carpeta hay archivos con la extensión .txt  si los hay entonces realizo otra operación.

    Gracias por su colaboración.

    Saludos, 

    viernes, 24 de junio de 2016 20:00

Respuestas

  • Puedes crearte una función que realice la comprobación:

        Function ExisteExtension(rutaCarpeta As String, extension As String)
            Dim carpeta As New DirectoryInfo(rutaCarpeta)
            Return carpeta.GetFiles($"*.{extension}").Any()
        End Function

    De esta forma para realizar la comprobación simplemente tendrías que hacer:

    If ExisteExtension("C:\MiCarpeta", ".doc") Then
       ' Existe algún archivo .doc
    Else
       ' No existe ningún archivo .doc
    End If


    Píldoras .NET
    Artículos, tutoriales y ejemplos de código .NET

    Píldoras JS
    Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...

    • Propuesto como respuesta Willams Morales viernes, 24 de junio de 2016 20:16
    • Marcado como respuesta karlosc viernes, 24 de junio de 2016 23:51
    viernes, 24 de junio de 2016 20:11

Todas las respuestas

  • Hola buena tarde, prueba utilizando este ciclo

    For Each file As String In My.Computer.FileSystem.GetFiles("C:\TuRuta")
        Dim check As String = _
        System.IO.Path.GetExtension(file)
        If check = ".txt" then
          'Aquí haces tu operación
        End If
    Next
    Ahí solo valido los archivos con extensión .txt, tu puedes hacer con cualquier extensión


    Javier

    • Propuesto como respuesta Javier Córdova viernes, 24 de junio de 2016 20:10
    viernes, 24 de junio de 2016 20:10
  • Puedes crearte una función que realice la comprobación:

        Function ExisteExtension(rutaCarpeta As String, extension As String)
            Dim carpeta As New DirectoryInfo(rutaCarpeta)
            Return carpeta.GetFiles($"*.{extension}").Any()
        End Function

    De esta forma para realizar la comprobación simplemente tendrías que hacer:

    If ExisteExtension("C:\MiCarpeta", ".doc") Then
       ' Existe algún archivo .doc
    Else
       ' No existe ningún archivo .doc
    End If


    Píldoras .NET
    Artículos, tutoriales y ejemplos de código .NET

    Píldoras JS
    Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...

    • Propuesto como respuesta Willams Morales viernes, 24 de junio de 2016 20:16
    • Marcado como respuesta karlosc viernes, 24 de junio de 2016 23:51
    viernes, 24 de junio de 2016 20:11
  • Hola karlosc,

    Puedes usar el EnumerateFiles :

            Dim archivos = Directory.EnumerateFiles(ruta, "*.txt")
    
            If archivos.Count() > 0 Then
                MessageBox.Show("Hay " & archivos.Count() & " archivos .txt")
            End If

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    viernes, 24 de junio de 2016 20:20
  • Gracias amigos, por la pronta respuesta. me soluciono

    Un Abrazo,

    viernes, 24 de junio de 2016 23:52