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
Seite 3 von 3     123   
t0mmy

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

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

  Alt 16. Mär 2012, 11:58
So danke für deine hilfe (FileSearch) hat mir sehr dabei geholfen.
Wie stelle ich das nun mit den Ordnern an, also ich möchte in einem Stammverzeichnis nach bestimmten Ordnern suchen und diese löschen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

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

  Alt 16. Mär 2012, 12:02
Redest Du jetzt von der Komponente? Wie sind die "bestimmten Ordner" denn definiert?
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
t0mmy

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

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

  Alt 16. Mär 2012, 12:59
Nein die komponente hab ich nicht gemeint ich hab bissal was daraus verwendet können und mir selbst was zusammengestöpselt... wollt eure unterhaltung in meinem thread nicht stören. jetzt wüsst ich gern wenn ich einen Ordner namens "Ordner1" in einem Verzeichnis löschen auch wenn er unterverzeichnisse hat in dem dieser Ordner enthalten sein könnte.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#24

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

  Alt 16. Mär 2012, 13:13
Ich schlage vor, das Du das so machst wie es unter DOS mal notwendig war,
Code:
Zu löschendes Verzeichnis suchen
:1
bis in das unterste Verzeichnis durchhangeln
:2
alle Inhalte löschen
:
wenn startverzeichnis=aktuelles verzeichnis goto :ende
eine Ebene zurück
wenn Verzeichnisse enthalten sind goto :1
wenn nicht goto :2
:ende
verzeichnis löschen
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
t0mmy

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

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

  Alt 16. Mär 2012, 13:55
Okay das zum löschen eines Verzeichnisses hab ich bereits hier in der community gefunden.. ich hab mir so überlegt, ich würde gern die pfade wo sich der Ordner oder wenn mehr in dem Stammverzeichnis vorkommen gerne an eine Stringlist übergeben.. aber wie suche ich nach einem Ordnernamen?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

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

  Alt 16. Mär 2012, 14:07
FindFirst(Pfad + 'Test*', faDirectory, SearchRec) Sollte Verzeichnisse finden, deren Name mit Test beginnt.
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
t0mmy

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

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

  Alt 16. Mär 2012, 14:29
Ja das FindFirst geht aber er durchsucht mir nicht die unterverzeichnisse
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

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

  Alt 16. Mär 2012, 14:37
Dann musst Du rekursiv suchen. Du hast doch meinen Quelltext, und in der Code-Library gibt es auch genügend Beispiele.
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
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#29

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

  Alt 16. Mär 2012, 15:23
http://ww.delphifaq.com/faq/f98.shtml
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#30

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

  Alt 16. Mär 2012, 15:25
Okay das zum löschen eines Verzeichnisses hab ich bereits hier in der community gefunden.. ich hab mir so überlegt, ich würde gern die pfade wo sich der Ordner oder wenn mehr in dem Stammverzeichnis vorkommen gerne an eine Stringlist übergeben.. aber wie suche ich nach einem Ordnernamen?
Hier eine komplexere Funktion, die auch Ordner rekursiv durchsucht. Auch die Funktion habe ich für dich etwas gekürzt. Sollte es irgendwo einen Fehler geben, dann liegt es an der Kürzung.

Solltest du nur Ordner suchen, dann guck in der zweiten Hälfte wie nach Ordnern gesucht wird.

Delphi-Quellcode:
//Liefert Datei-Liste laut Maske
procedure GetFiles(Path, ExtMask: String; List: TStrings; SubFolder: Boolean);
var
  Attrib: Integer;
  Search: TSearchRec;
begin
  if Length(Path) > 0 then
    if Path[Length(Path)] <> '\then Path := Path + '\';

  Attrib := faArchive or faReadOnly or faHidden;// damit es keinen Krach gibt

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

  FindClose(Search);

  if SubFolder then
  begin
    if FindFirst(Path + '*.*', faDirectory, Search) = 0 then
    repeat
      if ((Search.Attr and faDirectory) = faDirectory) and
        (Search.Name[1] <> '.') then
        GetFiles(Path + Search.Name, ExtMask, List, SubFolder);
    until FindNext(Search) <> 0;

    FindClose(Search);
  end;
end;
Bedenke bitte, dass du jetzt rekursiv arbeitest. Solltest du auf die Idee kommen List mit einem try except Block zu schützen, fliegt dir bei einer Exception die ganze Funktion um die Ohren, da wegen rekursiv dann immer wieder auf eine freigegebene TStrings-Liste zugegriffen wird.

Geändert von Popov (17. Mär 2012 um 00:08 Uhr) Grund: Kleinen Fehler ausgebessert
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 08:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz