Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Obtener los nombres de las subcarpetas de una carpeta (https://www.clubdelphi.com/foros/showthread.php?t=83299)

ingabraham 31-05-2013 19:20:57

Obtener los nombres de las subcarpetas de una carpeta
 
^\||/hola,

quiero obtener los nombres de las subcarpetas que posee una carpeta.

C:Carpetapadre
|- 1subcarpeta
|- 2subcarpeta
|- 3subcarpeta


los cargare en un combobox

delphi 7

ecfisa 31-05-2013 19:57:06

Hola.

Código Delphi [-]
procedure SubCarpetas(Ruta: string; TS: TStrings);
var
  SR: TSearchRec;
begin
  Ruta := InCludeTrailingPathDelimiter(Ruta) + '*.*';
  if FindFirst(Ruta, $10, SR) = 0 then
    repeat
      if (SR.Name[1] <> '.')and(SR.Attr = $10) then
        TS.Add(SR.Name);
    until FindNext(SR) <> 0;
  FindClose(SR);
end;

Llamada:
Código Delphi [-]
  SubCarpetas('C:\WINDOWS\', ListBox1.Items);

También podrías usar el componente TDirectoryListBox...

Saludos.

nlsgarcia 01-06-2013 06:49:24

ingabraham,

Una variante al código sugerido en el Msg #2 es:
Código Delphi [-]
   if (SR.Name[1] <> '.') and ((SR.Attr and faDirectory) = faDirectory) then
Espero sea útil :)

Nelson.


La franja horaria es GMT +2. Ahora son las 02:35:32.

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