Entwickler-Ecke
Dateizugriff - Alle Dateien aus einem Ordner auslesen
cux - Mi 06.04.05 23:33
Titel: Alle Dateien aus einem Ordner auslesen
hi
kurze frage:
wie kann ich alle dateien aus einem ordner einlesen ohne dass ich deren namen kenne?
cux
Popov - Mi 06.04.05 23:47
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37:
| procedure GetAllFiles(Path, ExtMask: String; List: TStrings; SubFolder: Boolean); var Attrib, i: Integer; Search: TSearchRec; begin Attrib := faArchive + faReadOnly + faHidden;
if Path[Length(Path)] <> '\' then Path := Path + '\';
with TStringList.Create do try CommaText := ExtMask;
for i := 0 to Count - 1 do if FindFirst(Path + '*.' + Strings[i], Attrib, Search) = 0 then repeat List.Add(AnsiUpperCase(Path + Search.Name)); until FindNext(Search) <> 0;
FindClose(Search); finally Free end;
if SubFolder then begin if FindFirst(Path + '*.*', faDirectory, Search) = 0 then begin repeat if ((Search.Attr and faDirectory) = faDirectory) and (Search.Name[1] <> '.') then GetAllFilesEM(Path + Search.Name, ExtMask, List, SubFolder); until FindNext(Search) <> 0;
FindClose(Search); end; end; end; |
Delphi-Quelltext
1:
| GetAllFiles('c:\programme\', '*', ListBox1.Items, False); |
Delete - Mi 06.04.05 23:48
Eine fantastische Erfindung, die sich Suche nennt (
DATEIEN ORDNER AUSLESEN) hätte dir sicher schneller geholfen.
@Popov: Wie war das? Wozu schreibt jemand FAQ-Beiträge, wenn Sie keiner liest? :)
Popov - Do 07.04.05 00:16
Ja, aber GetAllFiles ist meine lieblings Prozedur :D . Keine Ahnung wie oft ich die schon verbessert habe. Es fällt mir immer eine neue Kleinigkeit ein. Bei dieser kann man mehrere Erweiterungen eingeben. Solche Verbesserungen müssen unter das Volk ;)
cux - Do 07.04.05 09:52
Danke!
Deine Procedure ist echt genial! Genau das was ich gesucht habe!
cux
Mafoe - Di 05.07.05 15:11
Kann man das dann auch irgendwie in ein Feld speichern?
Oder anderweitig verwenden als in der Listbox?
jaenicke - Di 05.07.05 15:21
Mafoe hat folgendes geschrieben: |
Kann man das dann auch irgendwie in ein Feld speichern?
Oder anderweitig verwenden als in der Listbox? |
Wie meinst du das mit dem Feld?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| var tmpList: TStringList; begin tmpList := TStringList.Create; GetAllFiles('c:\programme\', '*', tmpList, False); ShowMessage(tmpList.Text); if tmpList.Count > 1 then ShowMessage(tmpList[1]); tmpList.Free; end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!