Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Verz. nach Datei durchsuchen die gestern gemacht wurden (https://www.delphipraxis.net/58974-verz-nach-datei-durchsuchen-die-gestern-gemacht-wurden.html)

remie 15. Dez 2005 09:21


Verz. nach Datei durchsuchen die gestern gemacht wurden
 
Hi
ich habe ein problem und zwar muss ich ein Verzeichnis nach
einer Datei durchsuchen, die vom ausführungsdatum aus gesehen Gestern zuletzt geändert wurde
hat sowas schon mal jemand gemacht ?
oder eine Idee?
das mit FindFirst habe ich schon gesehen, aber das hilft mir nicht so recht weiter,
gibt es da auch eine Sortiermöglichkeit bzw. nen count oder ähnliches ???

Danke im Vorraus

tomsel 15. Dez 2005 09:37

Re: Verz. nach Datei durchsuchen die gestern gemacht wurden
 
hier gibt es imho nur die Möglichkeit mit der Kombination von FindFirst und FindNext in einer Schleife jede Datei auf die gesuchte Eigenschaft hin zu überprüfen.

remie 15. Dez 2005 09:50

Re: Verz. nach Datei durchsuchen die gestern gemacht wurden
 
oh man das hab ich befürchtet ok nagut dan schmeiß ich das alles in nen array und lese es dan aus
aber einen count gibt es nicht oder ?
damit ich die array länge nihct so unendlihc groß machen muss

tomsel 15. Dez 2005 10:21

Re: Verz. nach Datei durchsuchen die gestern gemacht wurden
 
Zitat:

oh man das hab ich befürchtet ok nagut dan schmeiß ich das alles in nen array und lese es dan aus
aber einen count gibt es nicht oder ?
damit ich die array länge nihct so unendlihc groß machen muss
wofür ein Array???

Delphi-Quellcode:
procedure Dateisuche;
var SearchRec:tSearchRec;
    dtGestern:tDate;
    sDateiPfad:string;
begin
        ...
   if FindFirst(sDateipfad + '\*.*', faAnyFile, SearchRec) = 0 then
       repeat
          if ((Searchrec.Attr and faDirectory) = 0)
          and(FileDateToDateTime(SearchRec.Time) = dtGestern) then begin
            ...
          end;
        until FindNext(SearchRec) <> 0;
        FindClose;

end;

remie 15. Dez 2005 12:49

Re: Verz. nach Datei durchsuchen die gestern gemacht wurden
 
ja gut so würde ich ja alle Dateien senden, die gestern zuletzt geändert wurden,
aber ich soll nur das zuletzt geänderte abschicken somit muss ich das doch vergleichen
:-/

merci für die schnelle Hilfe

ichbins 15. Dez 2005 13:57

Re: Verz. nach Datei durchsuchen die gestern gemacht wurden
 
Mach eine Variable in der Speicherst du den Namen der 1. gefundenen Datei und das Datum. Bei der nächsten Datei überprüfst du, ob das Datum später ist, wenn ja, wird der Datumswert und Dateiname in der Variable ersetzt. (usw)

Und du musst nie ein Array "so unendlich lang machen", es gibt ja zum Glück dynamische Arrays:

Delphi-Quellcode:
var
  a:array of string;
begin
  setlength(a,0);
 
  ...

  while findnext(s) do
  begin
    setlength(a,length(a)+1); //a um 1 verlängern
    a[length(a)-1]:=s.filename; //Ins letzte Element den Dateinamen speichern
  end;
end;


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