Einzelnen Beitrag anzeigen

dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Inhalt eines Ordners auslesen

  Alt 23. Okt 2007, 19:31
ok
und ich hab beim durchgehen gesehen das man da noch was vereinfachen kann

Delphi-Quellcode:
procedure GetFileList(Path: String; ZielListe: TStringList);
var
  SR: TSearchRec;
begin
  if Path[length(Path)] <> '\then // erstmal schauen wir ob der übergebene pfad
    Path := Path + '\'; // mit einem \ aufhört, zB C:\Test\
  if FindFirst(Path + '*.jpg', faAnyFile, SR) = 0 then // nach der ersten datei suchen die mit .jpg endet
                                                       // * wird dabei als platzhalter verwendet
                                                       // in SR wird der fund gespeichert
    repeat
      ZielListe.Add(Path + sr.Name); // pfad zum bild merken
    until FindNext(SR) <> 0; // mit FindNext wird die suche wiederholt
  FindClose(SR); // suche abschließen
  if FindFirst(Path + '*.*', faAnyFile, SR) = 0 then // das ganze noch mal von vorne mit ordnern
    repeat
      if (SR.Attr = faDirectory) and // schauen ob fund ein ordner ist
         (SR.Name <> '.') and (SR.Name <> '..') then // "
           GetFileList(Path + SR.Name + '\', ZielListe); // rekursiver aufruf unserer procedure mit unterordner
    until FindNext(SR) <> 0; // suche widerholen
  FindClose(SR); // suche abschließen
end;

procedure TForm1.Button1Click;
var
  List: TStringList;
  I: Integer;
begin
  List := TStringList.create; // unsere StringList erzeugen
  try // speicherschutzblock
    GetFileList('<MeinPfad>', List); // unsere prozedure, deinen pfad hier eintragen!
    for I := 0 to List.Count do // alle elemente der liste durchgehen...
      LoadMyImage(List[I]); // ... und laden (ist jetzt nur nen beispiel)
  finally
    FreeAndNil(List); // speicher freigeben
  end;
end;
das laden vom bild musst du übernehmen^^
setz dir am anfang der prozedure nen breakpoint, dann siehst du mit jedem knopfdruck auf F8 wo er gerade hinspringt.
Bei weiteren Fragen fragen.
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat