Repertoire / sous rep

Repertoire / sous rep - Delphi/Pascal - Programmation

Marsh Posté le 10-06-2005 à 10:04:44    

bonjour,
je cherche une fonction qui me listerait tous les fichiers de tous les repertoires et sous repertoires.
j arrive a lister des fichier d'un repertoire cible, mais pas des sous rep
 
voila mon code :

Code :
  1. / charge les fichiers mails dans un tstringlist
  2. function Lister_fichiers(chemin_ : string) : tstringlist;
  3. var
  4.   sr: TSearchRec;
  5.   FileAttrs: Integer;
  6. begin
  7.      FileAttrs :=0;
  8.      Result:= TStringList.Create;
  9.      FileAttrs := FileAttrs + faArchive;
  10.      if FindFirst(chemin_, FileAttrs, sr) = 0 then
  11.      begin
  12.       result.add(sr.name);
  13.      end;
  14.      while FindNext(sr) = 0 do
  15.       begin
  16.        result.add(sr.name);
  17.       end;
  18.      FindClose(sr);
  19. end;


 
cette fonction me liste et me stock le nom des fichiers dans un tsringlist.
 
merci de l'aider


Message édité par Pookie le 10-06-2005 à 10:12:00
Reply

Marsh Posté le 10-06-2005 à 10:04:44   

Reply

Marsh Posté le 10-06-2005 à 12:29:21    

Quand parmis les fichiers tu trouves un dossier, tu rappelles ta fonction sur ce dossier, qui en listera le contenu, etc.
Dans ta liste actuelle tu n'as pas les dossiers ? Mets faAnyFile à la place de faArchive, et ensuite dans la bouche fais le test sur son type (dossier ou fichier, archive ou non si nécessaire)
 
Pour ta boucle, tu peux éviter de dupliquer le code en la faisant comme ça :
 

Code :
  1. code := FindFirst(chemin_, FileAttrs, sr);
  2. while code = 0 do
  3. begin
  4.   result.add(sr.name);
  5.   code := FindNext(sr);
  6. end;


Message édité par antp le 10-06-2005 à 12:32:27

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed