Principales respuestas
Reconocer que extensiones de archivo se encuentran en un folder

Pregunta
-
Saludos como poder hacer una busqueda para diferenciar extensiones, es decir que busque extensiones básicas nos mande msj de que extensiones hay en msj, programando en una carpeta reconozca de que tipo son, deseo en una carpeta buscar extensiones .mp3, .jpg, .txt, .doc, la carpeta contenedora una extensión solo se desea saber de ese 1 archivo, nos diga de que tipo es el archivo que contienen esa carpeta.
"*.txt" se encontró extensión de texto
"*.mp3" se encontró extensión de audio
y mas extensiones que nosotros programemos
extensiones
he estado intentado hacer un buscado de archivo pero no logro identificar que formato es, alguna ayuda.
Dim ExtensionBuscada As String = "*.txt; *.doc, *.mp3; *.jpg" Dim dirInfo As New DirectoryInfo("ruta") Dim files = dirInfo.GetFiles(ExtensionBuscada, SearchOption.AllDirectories) If files.Length > 0 Then TextBox4.Text = files(0).FullName Else End If
- Editado Cael1020 lunes, 12 de marzo de 2018 1:00
Respuestas
-
Hola Cael1020
Por lo que pude entender es que quieres un enumerador de extensión de archivo.
Te escribí el código que te muestro a continuación, espero que te sirva, saludos.
ah!, el valor resultante de la función es una lista con la cantidad de extensiones encontradas según la extenensiones que especifiques.
Saludos,
Private Function buscar_extension_cael1020(ext_buscar As String, ubicacion As String) As List(Of Int32) ' ext_buscar = Extensiones separadas por ";", ejemplo : .txt;.mp3 Dim retval As New List(Of Int32) Try Dim ext_ As List(Of String) = ext_buscar.Split(";"c).ToList Dim lst_files As List(Of String) = IO.Directory.GetFiles(ubicacion).ToList For Each d As String In ext_ retval.Add(0) Next For Each d As String In lst_files Dim idx_ext As Int32 = ext_.IndexOf(IO.Path.GetExtension(d)) If idx_ext <> -1 Then retval(idx_ext) += 1 End If Next Catch ex As Exception End Try ' retval = Lista de valores. ejemplo : 10,20 (serían 10 archivos con extensión .txt y 20 con .mp3) Return retval End Function
Ejemplo
Dim respuesta As List(Of Int32) = buscar_extension_cael1020(".dll;.exe;.sys", "c:\windows\system32")
Programador de sistemas
- Propuesto como respuesta J. Carlos Herrero lunes, 12 de marzo de 2018 6:16
- Marcado como respuesta Enrique M. MontejoModerator jueves, 15 de marzo de 2018 11:01
Todas las respuestas
-
Hola Cael1020
Por lo que pude entender es que quieres un enumerador de extensión de archivo.
Te escribí el código que te muestro a continuación, espero que te sirva, saludos.
ah!, el valor resultante de la función es una lista con la cantidad de extensiones encontradas según la extenensiones que especifiques.
Saludos,
Private Function buscar_extension_cael1020(ext_buscar As String, ubicacion As String) As List(Of Int32) ' ext_buscar = Extensiones separadas por ";", ejemplo : .txt;.mp3 Dim retval As New List(Of Int32) Try Dim ext_ As List(Of String) = ext_buscar.Split(";"c).ToList Dim lst_files As List(Of String) = IO.Directory.GetFiles(ubicacion).ToList For Each d As String In ext_ retval.Add(0) Next For Each d As String In lst_files Dim idx_ext As Int32 = ext_.IndexOf(IO.Path.GetExtension(d)) If idx_ext <> -1 Then retval(idx_ext) += 1 End If Next Catch ex As Exception End Try ' retval = Lista de valores. ejemplo : 10,20 (serían 10 archivos con extensión .txt y 20 con .mp3) Return retval End Function
Ejemplo
Dim respuesta As List(Of Int32) = buscar_extension_cael1020(".dll;.exe;.sys", "c:\windows\system32")
Programador de sistemas
- Propuesto como respuesta J. Carlos Herrero lunes, 12 de marzo de 2018 6:16
- Marcado como respuesta Enrique M. MontejoModerator jueves, 15 de marzo de 2018 11:01
-