Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   buscar ficheros con mascara en un directorio (https://www.clubdelphi.com/foros/showthread.php?t=69706)

petete2008 02-09-2010 22:30:51

buscar ficheros con mascara en un directorio
 
Hola a todos :
Me gustaria obtener en un memo un listado de los nombres de los ficheros que hay en un directorio de mi disco C.
He encontrado el siguiente código que funciona bien cuando el caracter comodín utiilzado es el asterisco (*), en cambio no funciona para el caracter comodin interrogante (?)

http://www.todoexpertos.com/categori...o-con-combobox

Alguien sabe como hacer una busqueda por ejemplo
ListaDeArchivos := ArchivosCarpeta('C:\MiCarpeta', '*foto?.jpg', False, False);

Gracias!!

ecfisa 03-09-2010 07:00:04

Hola petete.

La función del link funciona perfectamente, para quitarte las dudas hacé la siguiente prueba:
Código Delphi [-]
  ComboBox1.Items := ArchivosCarpeta('C:\Windows\', 'twunk_??.EX?', False, False);

Creo tenés un error de concepto sobre el funcionamiento de los comodines en dos/windows.

*: Ignora todos los caracteres a partir de su hubicación, ya sea del nombre o la extensión del archivo.
?: Ignora el caracter situado en esa posición.

Entonces como pusiste arriba:
Cita:

ListaDeArchivos := ArchivosCarpeta('C:\MiCarpeta', '*foto?.jpg', False, False);
No tiene sentido el signo de interrogación '?', ya que al tener un '*' al principio admite todos los nombres cuya extensión sea '.JPG'.

Si tu filtro es : 'ARCH?VO.*', te va a mostrar los archivos cuyo nombre tenga 'ARCH'(no interesa)'VO'.(todas las extensiones).
Como por ejemplo: ARCHAVO.TXT, ARCHBVO.EXE, ARCHCVO.PDF, ARCH&VO.000, ARCHZVO.Z$Z, ...

Pero de ningún modo te va a mostrar un archivo que se llame: ARCHIVO1.TXT


Saludos.:)

petete2008 06-09-2010 14:44:16

Gracias por la aclaración.
Llevás razón!! :)


La franja horaria es GMT +2. Ahora son las 08:45:31.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi