![]() |
AW: CMD mit Output
Man nehme als Zeit grundsätzlich GMT und rechne für die Anzeige ggfls. nach den aktuelle gültigen Regeln, Zeitzonen ... um.
Ansonsten braucht man halt die Information, wann und wo es überhaupt irgendwelche Zeitumstellungen gab oder gibt, bzw. den / die zur Umrechnung erforderlichen Algorithmus / Algorithmen. Mit rein mathematischen Methoden oder purer Logik kommt man da nicht zum Ziel. Ohne "Wissensbasis" geht da nix. |
AW: CMD mit Output
Ja, das meine ich, mit Regeln wie in meinem Link s.u.
Gibt es da vielleicht schon etwas Fertiges, oder einen allgemeingültigen Shortcut ? |
AW: CMD mit Output
Da es sich um veränderliche Regeln handelt, kann es nichts allgemeingültiges geben.
Es könnte allenfalls etwas geben, das einen bestimmten Zeitrahmen abdeckt. Suchmaschine Deiner Wahl mal mit ![]() Eventuell ein Ansatz: ![]() |
AW: CMD mit Output
Zitat:
Hier ![]()
Delphi-Quellcode:
Den Code halte ich allerdings für verbesserungsfähig. U.a. halte ich es für gewagt, word(true) als +1 anzunehmen. Auch sollte ein Ausdruck wie
function CheckBRDSz(Datum: TDateTime): Boolean;
var y, m, d : Word; sDat, eDat : TDateTime; begin DecodeDate(Datum, y, m, d); if y < 1981 then Result := False else begin sDat := EncodeDate(y, 3, 31); sDat := sDat - (DayOfWeek(sDat) - 1) + Frac(StrToTime('02:00')); eDat := EncodeDate(y, 10 - Word(y <= 1995), 31 - Word(y <= 1995)); eDat := eDat - (DayOfWeek(eDat) - 1) + Frac(StrToTime('03:00')); Result := (Datum >= sDat) and (Datum < eDat); end; end
Delphi-Quellcode:
nicht zur Laufzeit ausgewertet werden, vor allem, wenn der Code in Schleifen verwendet werden soll. Auch könnte man das Ganze flexibler gestalten indem man, anstatt Konstante zu verwenden, eine Länderspezifische Struktur mit Anfangs- und Enddatum + Uhrzeit, Geltungszeitraum usw. übergeben würde.
Frac(StrToTime('02:00')
Ich verwende den Code, wenn ich an iTunes via COM-Interface ein Datum + Uhrzeit (z.B. 'Zuletzt gespielt') übergebe und aktuelles Datum ('now') und übergebenes Datum nicht im gleichen Zeitbereich (MEZ oder MESZ) liegen. In diesem Fall wird nämlich von iTunes je nach 'Richtung' ungefragt eine Stunde addiert bzw. subtrahiert. Gruß LP |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz