AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen
Thema durchsuchen
Ansicht
Themen-Optionen

Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

Ein Thema von t0mmy · begonnen am 15. Mär 2012 · letzter Beitrag vom 16. Mär 2012
Antwort Antwort
t0mmy

Registriert seit: 28. Jul 2010
431 Beiträge
 
Delphi 2010 Architect
 
#1

Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

  Alt 15. Mär 2012, 14:12
Kann mir da jemand weiter helfen?

Also ich will 2-Listboxen durchen und die jeweiligen Verzeichnisse und Files in einem Stammverzeichnis löschen.
Wie finde ich z.B: alle *.txt datei und kann diese löschen.

Weiters... wie such ich bestimmte Ordner auch wenn sie im Unterverzeichnissen drinnen sind.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#2

AW: Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

  Alt 15. Mär 2012, 14:52
FindFirst, FindNext sind Dein Freund. Oder Du installierst Dir meine Komponente TFileSearcher, dann musst Du das nicht selber erledigen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

  Alt 15. Mär 2012, 14:59
Da ich zufällig ein Projekt offen habe in dem sich diese Funktion befindet:

Delphi-Quellcode:
procedure GetFileList(Path, Ext: String; List: TStrings);
const
  Attrib = faArchive + faReadOnly + faHidden;
var
  Search: TSearchRec;
begin
  if Path[Length(Path)] <> '\then Path := Path + '\';

  if FindFirst(Path + '*' + Ext, Attrib, Search) = 0 then
  repeat
    List.Add(Path + Search.Name);
  until FindNext(Search) <> 0;

  FindClose(Search);
end;
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#4

AW: Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

  Alt 15. Mär 2012, 15:12
Ganz so einfach ist es wohl nicht, Rekursion fehlt z.B., man addiert keine Bitmasken, Du prüfst nicht auf Länge 0 usw.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#5

AW: Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

  Alt 15. Mär 2012, 15:36
Ganz so einfach ist es wohl nicht, Rekursion fehlt z.B., man addiert keine Bitmasken, Du prüfst nicht auf Länge 0 usw.
Ich habe mal vor Jahren den Fehler gemacht mich bei genau dieser Funktion auf eine Diskussion einzulassen, die von der anderen Seite vereinfacht ausgedrückt so lautete: deine Funktion ist falsch, auch wenn sie aus der OH geradezu abgetippt ist. Auch wenn es in der OH so steht ist es ganz anders gemeint. Denn wenn man deine Funktion nimmt und der Anton ein Bier trinkt, dann könnte das passieren. Also studiere vorher die API wie es gemeint ist usw.

Im OH Beispiel wird auch addiert und nicht auf Länge 0 geprüft usw. Wenn das Beispiel falsch ist, dann biegt der Fehler bei Borland bzw. Nachfolger.

Was die Rekursion angeht, ok, wie gesagt, ich habe diese Funktion so aus meinem Projekt kopiert und da brauche ich es nicht.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#6

AW: Bestimmte Dateien und Verzeichnise in einem Stammverzeichnis löschen

  Alt 15. Mär 2012, 15:37
Soll heißen: wenn Du ein Beispiel liest, das suboptimal programmiert ist, übernimmst Du es, weil es ja von Borland/Inprise/CodeGear/Embarcadero stammt? Interessante Einstellung.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:04 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