Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Ordner durchsuchen (https://www.delphipraxis.net/67336-ordner-durchsuchen.html)

StoRmtec 13. Apr 2006 08:35


Ordner durchsuchen
 
Hy @all

Und zwar durchsuche ich Ordner und lasse die Dateien in der ChecklistBox ausgeben.
Hier der Code:

Delphi-Quellcode:
procedure GetFiles(LB : TCheckListBox; Path, ext: string);
var
  SR   : TSearchRec;
  err  : integer;
  dummy : string;
begin
   err := FindFirst(Path+'*.'+ext, faAnyFile, SR);
   while err = 0 do
   begin
     if (sr.name<>'.') and (sr.name<>'..') then
     if ((sr.Attr and fadirectory)<>0) then
     begin
       dummy := path + sr.name + '\';
       getfiles(lb, dummy, ext);
     end
     else
     lb.Items.Append(sr.FindData.cFileName);
     err := findnext(sr);
  end;
  FindClose(SR);
end;
Da wird mir aber auch in der CheckListBox die Endung mitgegeben.
Wie kann ich das jetzt machen das er mir die Endung nicht mit anzeigt.

Danke
StoRmtec

Luckie 13. Apr 2006 08:39

Re: Ordner durchsuchen
 
Guck mal in der Hilfe unter Delphi-Referenz durchsuchenChangeFileExt.

StoRmtec 13. Apr 2006 09:28

Re: Ordner durchsuchen
 
Danke aber wie kann ich das dann in die CheckListBox einbinden das
er mir dann auch nicht anzeigt.

Mfg
StoRmtec

Klaus01 13. Apr 2006 09:36

Re: Ordner durchsuchen
 
Könnte auch so gehen, oder?

Delphi-Quellcode:
    lb.Items.Append(copy(sr.FindData.cFileName,1,pos('.',sr.FindData.cFileName)-1)));
Grüße
Klaus

ste_ett 13. Apr 2006 09:39

Re: Ordner durchsuchen
 
Damit findest du den ersten Punkt im Namen.
Das muss nicht zwingend der letzte sein, der die Dateiendung kennzeichnet.

Besser ist es mit
Delphi-Quellcode:
ChangeFileExt()
.

Luckie 13. Apr 2006 09:39

Re: Ordner durchsuchen
 
@StoRmtec: Mann kann als zweiten Parameter auch einen Leerstring übergeben.

StoRmtec 13. Apr 2006 09:42

Re: Ordner durchsuchen
 
So wird das ausgeben in die CheckListBox

Delphi-Quellcode:
    path := 'C:\ppi\';
  getfiles(checkListBox1, path, 'pcl'); //ini ist die Dateiendung nach der gesucht
Wo muss ich das dann dazu machen das nur der Name da steht und die endung nicht mehr danke.

Mfg
StoRmtec

ste_ett 13. Apr 2006 09:45

Re: Ordner durchsuchen
 
In dieser Zeile
Delphi-Quellcode:
lb.Items.Append(sr.FindData.cFileName);
musst du den Parameter für Append anpassen.

Klaus01 13. Apr 2006 09:45

Re: Ordner durchsuchen
 
wenn ich das richtig verstanden habe, dann so

Delphi-Quellcode:
   lb.Items.Append(changeFileExt(sr.FindData.cFileName,''));
Grüße
Klaus

StoRmtec 13. Apr 2006 10:09

Re: Ordner durchsuchen
 
Okay danke es funktioniert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:31 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