Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Datumsfunktion in einer for-Schleife (https://www.delphipraxis.net/166431-datumsfunktion-einer-schleife.html)

Ajintaro 13. Feb 2012 15:14

Datumsfunktion in einer for-Schleife
 
Hallo DP!

Ich habe Dateien mit einem Datum im Dateinamen. Fuer den heutigen Tag sieht sie z.B. so aus: 120213.zip

Delphi-Quellcode:
FormatDateTime('yymmdd',now)+'.zip'

Ich moechte nun die Dateien der letzten 14 Tage auf Anwesenheit pruefen. Vermeiden moechte ich:

Delphi-Quellcode:
if FileExists(FormatDateTime('yymmdd',now)+'.zip') then //mache dies und das
if FileExists(FormatDateTime('yymmdd',now)+'.zip-1') then //mache dies und das
if FileExists(FormatDateTime('yymmdd',now)+'.zip-2') then //mache dies und das
if FileExists(FormatDateTime('yymmdd',now)+'.zip-3') then //mache dies und das
if FileExists(FormatDateTime('yymmdd',now)+'.zip-4') then //mache dies und das
...
Das kann man bestimmt irgendwie eleganter loesen.

Delphi-Quellcode:
for i := 0 to -13 do
 begin
  if FileExists(FormatDateTime('yymmdd',now[i])+'.zip') then //mache dies und das
  dec(i);
 end;

So gehts auf jeden Fall nicht :-( WIsst ihr Rat?

DeddyH 13. Feb 2012 15:18

AW: Datumsfunktion in einer for-Schleife
 
Delphi-Quellcode:
uses DateUtils;

for i := 0 to 13 do
 begin
  if FileExists(FormatDateTime('yymmdd',IncDay(now, -i))+'.zip') then
Ungetestet.

Ajintaro 13. Feb 2012 15:24

AW: Datumsfunktion in einer for-Schleife
 
Zitat:

Zitat von DeddyH (Beitrag 1150829)
Ungetestet.

Aber funktioniert. Dateutils
Delphi-Quellcode:
IncDay(now, -i)
ist ja wunderbar! Vielen Dank!

Furtbichler 13. Feb 2012 15:42

AW: Datumsfunktion in einer for-Schleife
 
IncDays(Now,-x) <==> Now - x


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