Autor Beitrag
to-wer
Hält's aus hier
Beiträge: 7



BeitragVerfasst: So 18.05.08 19:01 
Hallo,
ich möchte gerne alle jpg-Bilder auf einer Festplatte ermitteln und diese dann entweder in einen anderen Ordner kopieren oder löschen.
Hat jemand so etwas schon mal probiert und kann mir da Ansätze schreiben?

Danke
to-wer
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: So 18.05.08 19:39 
FindFirst, FindNext, CopyFile

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
Jann1k
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 866
Erhaltene Danke: 43

Win 7
TurboDelphi, Visual Studio 2010
BeitragVerfasst: So 18.05.08 19:59 
Hab sowas vor kurzem gemacht, hier meine Lösung:

ausblenden volle Höhe 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:
38:
39:
40:
41:
42:
procedure TForm1.suchejpgs(s:string; var list:Tstringlist);
var  Found,J     : integer;
     SearchRec : TSearchRec;
     ordnerliste:tstringlist;
     endung:string;
begin

 J:=-1;
 includetrailingpathdelimiter(s);

 ordnerliste:=tstringlist.create;
 ordnerliste.Add(s);
  while (J<ordnerliste.Count-1) do
  begin
  inc(J);
  s:=includetrailingpathdelimiter(ordnerliste[J]);

  Found := FindFirst(s+'*.*', 255, SearchRec);
      while Found = 0 do
      begin
          //Unterordner zusmamenstellen
          if (extractfileext(searchrec.Name)='')   then
          ordnerliste.add(s+SearchRec.Name);

          //Jpgs rausfiltern
          endung:=lowercase(extractfileext(searchrec.name));
            if (endung='.jpg')  then
            list.Add(s+searchrec.name);

      Found := FindNext(SearchRec);
      end;
  end;



 if j=0 then J:=1;


 FindClose(SearchRec);

 ordnerliste.free;
end;



Die Prozedur durchsucht den mit s angegebenen Ordner und alle Unterordner nach .jpg Dateien und speichert deren Pfade in der Tstringlist list ab.