![]() |
Inhalt eines Ordners auslesen
Hallo
Ich würde gerne den Inhalt eines Ordners auslesen, d.h eine Stringliste mit allen Datei und Ordnernamen erhalten, die der zu durchsuchende Ordner enthält. Am liebsten wäre mit eine Funktion, die wie der Befehl "dir /b" unter DOS/Eingabaufforderung arbeitet. Vielen Danke schon mal im Voraus! |
Re: Inhalt eines Ordners auslesen
Willkommen :dp:
Ich denke, ich spreche für die Mehrheit hier, wenn ich sage, dass es sehr geschätzt wird, wenn man sich selbst auf die Suche macht. Dann findet man zum Bleistift aus der Codelib dies hier: ![]() Gruß, Daniel |
Re: Inhalt eines Ordners auslesen
Ich habe auch schon selber gesucht und einen ähnlichen Code gefunden.
Leider läuft sowohl dein Code, als auch der, den ich gefunden habe bei mir nicht. Es wird ein Fehler ausgegeben, das die Funktion "DirectoryExist()" unbekannt ist. Ich glaube das liegt daran, dass ich bei Uses nicht Variant einfügen kann, da sie bei mir nicht installiert ist. Ich benutze Delphi 5 Leider kann ich auch keine zusätzlichen Komponenten etc. installieren, da der Code auch in der Schule laufen sollte. Hat jemand eine Idee, wie ich mein Problem lösen könnte? Ich würde mich sehr über einen Ansatz freuen. |
Re: Inhalt eines Ordners auslesen
DirectoryExist liegt in der Unit SysUtils. Dies hätte dir ein Blick in die Online-Hilfe auch gesagt. Variant.pas gibt es erst ab D6, so das du i.d.R. diese Uses-Anweisung bei D5 einfach weg lassen kannst.
|
Re: Inhalt eines Ordners auslesen
Nein die Funktion liegt in der Unit FileCtrl. Das Programm funktioniert aber auch zur Laufzeit nicht. Es stürzt ab und im Taskmanager steht, das es keine Rückmeldung mehr liefert.
Gibt es nicht eine einfach Fuktion wie "Dir" für DOS? |
Re: Inhalt eines Ordners auslesen
Das könnte aber auch andere Gründe haben. Der Source würde uns hier bei der Suche sicher helfen. ;)
|
Re: Inhalt eines Ordners auslesen
Zitat:
Zitat:
Die Funktion aus der ![]() Zitat:
|
Re: Inhalt eines Ordners auslesen
Zitat:
Wenn kein Application.ProcessMessages drin steht, dann reagiert das Programm derweil eben nicht mehr. // EDIT: DirectoryExists gibt es in SysUtils und FileCtrl: ![]() |
Re: Inhalt eines Ordners auslesen
Es gibt auch
![]() "dir" durchsucht keine Unterverzeichnisse, daher gehe ich davon aus, dass du das auch nicht haben möchtest. Grüße |
Re: Inhalt eines Ordners auslesen
Delphi-Quellcode:
Allerdings nicht Rekursiv.. wenn du das selbst einbaust kannste ja den Code uppen :zwinker:
function ReadDir(Path, Mask: string; ShowDir, ShowFiles, ShowPath: boolean): TStringlist;
var SRec: TSearchRec; DateiListe: TStringList; begin DateiListe := TStringList.Create; if Path[length(Path)] <> '\' then Path:=Path+'\'; if ShowDir AND Showfiles then FindFirst(Path + Mask, faAnyFile, SRec) else if ShowFiles then FindFirst(Path + Mask, not faDirectory, SRec) else if ShowDir then FindFirst(Path + Mask, faDirectory, SRec); if (SRec.Name <> '.') AND (SRec.Name <> '..') AND (SRec.Name <> '') then begin if ShowPath then DateiListe.Add(Path + SRec.Name) else DateiListe.Add(SRec.Name); end; while FindNext(SRec) = 0 do begin if (SRec.Name <> '.') AND (SRec.Name <> '..') AND (SRec.Name <> '') then begin if ShowPath then DateiListe.Add(Path + SRec.Name) else DateiListe.Add(SRec.Name); end; end; FindClose(SRec); Result := DateiListe; end;
Delphi-Quellcode:
VerzInhalt:= ReadDir(dir,'*.*',false,true,true);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz