Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 22-11-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola darkmir.

La forma mas simple de concebir el algoritmo es de forma recursiva:
Código:
#include <io.h>
#include <dir.h>

void ListFiles(char *Dir, TListBox *LB)
{
  struct _finddata_t fdt;
  long hFile;
  char tmp[MAX_PATH];

  chdir(Dir);
  fdt.attrib = _A_SUBDIR;
  if( (hFile = _findfirst("*.*", &fdt) ) != -1) {
    do {
      if (fdt.attrib == _A_SUBDIR) {
        if (strcmp(fdt.name,".")!= 0 && strcmp(fdt.name,"..") != 0) {
          strcpy(tmp, Dir);
          strcat(tmp, "\\");
          strcat(tmp, fdt.name);
          ListFiles(tmp, LB);
        }
      }
      else
        LB->Items->Add(String(fdt.name));
    } while (_findnext(hFile, &fdt) == 0);
    _findclose(hFile);
  };
}
Sin embargo, si estas usando C++ Builder, es mas simple hacer:
Código:
void ListFiles(AnsiString Dir, TListBox *LB)
{
  TSearchRec sr;

  ChDir(Dir);
  if (FindFirst("*.*", faDirectory, sr) == 0) {
    do {
      if (sr.Attr == faDirectory) {
        if (sr.Name != "." && sr.Name != "..")
          ListFiles(Dir + "\\" + sr.Name, LB);
      } else
        LB->Items->Add(sr.Name);
    } while (FindNext(sr) == 0);
    FindClose(sr);
  }
}
Ejemplo de uso para ambas funciones:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   ListFiles("C:\\UNA_CARPETA", ListBox1);
}
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Obtener los nombres de las subcarpetas de una carpeta ingabraham Varios 2 01-06-2013 06:49:24
listar carpetas de un directorio? gabrielflowers PHP 13 10-04-2008 00:25:22
Es posible compartir carpetas por Internet utilizando compartir carpetas? JuanErasmo Windows 5 12-02-2007 20:45:17
listar archivos jpg dentro de una carpeta con subcarpetas JuanErasmo API de Windows 6 06-12-2006 22:52:49
Buscar archivos jpg en carpetas y subcarpetas!! JuanErasmo API de Windows 4 23-11-2006 17:41:49


La franja horaria es GMT +2. Ahora son las 20:47:03.


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