Heutige mit unabhängigem Datum vergleichen
Hi!
Ich wollt gern mal wissen wie ich das heutige Datum mit einem Tag x überprüfe. Im Forum hab ich schon einen Ganzem Teil gelsen aber alles war nicht in der Form wie ich es gern machen würde. Ich wollte das heutige Datum (
Code:
) mit einem festen Tag vergleichen (z.B. 05.06.XXXX (dd.mm.jjjj)| XXXX = Jahr) dieser Tag soll aber für jedes Jahr in dem wir uns befinden abgefragt werdem. Also kann ich keine Jahreszahl angeben. Eine Funktion mit der ich die Jahreszahl auslesen kann ist mir nicht geläufig und habe ich auch nicht gefunden.
DateToStr((Now)
Kann mir da jemand weiterhelfen???? |
Re: Heutige mit unabhängigem Datum vergleichen
DecodeDateTime sollte dir da weiterhelfen, dann hast du alle "Zeitkomponenten" wie
Jahr Monat Tag usw. einzeln abgespalten udn kannst dann damkit weiterarbeiten. mfg |
Re: Heutige mit unabhängigem Datum vergleichen
die Funktion DatetoStr könnte dir vielleicht weiterhelfen?
aus dem String könntest du das Jahr auslesen. |
Re: Heutige mit unabhängigem Datum vergleichen
Ich hab das jetzt mal mit Delete probiert. Problem is nur, das der Compiler mir immer sagt: "Incompatible Typen String und procedure"
Code:
Code:
Jahr := DateToStr(Now);
if (DateToStr(Now) = '05.06' + Delete(Jahr, 1, 6)) then begin . . . |
Re: Heutige mit unabhängigem Datum vergleichen
Zitat:
quelle und ziel sind beides strings. Ziel und quelle kann auch der gleiche String sein. und anfang und ende sind die nummer der Zeichen (also 1. Zeichen oder 7. Zeichen...) greez |
Re: Heutige mit unabhängigem Datum vergleichen
Das liegt daran, dass Delete() eine Prozedur ist und keine Funktion und somit hat Delete() auch keinen Rückgabewert.
Man könnte den Quelltext umschreiben:
Delphi-Quellcode:
(Jahr2 ist ein String.)
Jahr := DateToStr(Now);
Jahr2 := DateToStr(Now); Delete(Jahr2, 1, 6); if (DateToStr(Now) = '05.06' + Jahr2) then begin . . . MfG Binärbaum |
Re: Heutige mit unabhängigem Datum vergleichen
ich würde das andersherum machen, den tag den du vergleichen willst mit encode in ein TDate convertieren
in DateUtils gibt es dann funktionen die dir nur den tag/monat des datums zurückgeben, die du dann direkt vergleichen kannst MfG tn249 |
Re: Heutige mit unabhängigem Datum vergleichen
:shock: Einen Datumsvergleich über Strings?
Da ist der Weg von Tyral Y. doch viel sauberer:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var rtag, rmonat, rjahr : Word; tag, monat, jahr : Word; referenzdatum : TDate; begin referenzdatum := EncodeDate(2008,02,04); // Nur als Beispiel damit ich ein Datum habe DecodeDate (referenzdatum,rjahr,rmonat,rtag); // Und wieder aufspalten DecodeDate (date,jahr,monat,tag); // Heute if (rmonat = monat) AND (rtag = tag) then begin ShowMessage ('blubb'); end; end; |
Re: Heutige mit unabhängigem Datum vergleichen
Hallo,
Delphi-Hilfe: FormatDateTime Im folgenden Beispiel wird mit FormatDateTime die String-Variable S auf einen Satz gesetzt, der auf eine Besprechung in drei Stunden hinweist. Der Satz hat die folgende Form: "Die Besprechung ist am Mittwoch, 15. November 2002 um 2:30 PM".
Delphi-Quellcode:
Das zur Frage, wie Du z.B. nur die Jahreszahl herausfinden möchtest (als String).
S := FormatDateTime('"The meeting is on " dddd, mmmm d, yyyy, " at " hh:mm AM/PM', Now + 0.125);
Jetzt zum eigentlichen Problem. Ich verstehe nicht, was Du eigentlich machen möchtest? Du schreibst "Ich wollt gern mal wissen wie ich das heutige Datum mit einem Tag x überprüfe". Was willst Du überhaupt überprüfen? Welcher Wochentag? Welcher Tag im Jahr? Differenz zwischen zwei Daten? Ist der Tag ein Feiertag? Vollmond? etc. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:45 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