AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

CMD mit Output

Ein Thema von Willie1 · begonnen am 6. Mär 2019 · letzter Beitrag vom 1. Apr 2019
Antwort Antwort
Seite 5 von 5   « Erste     345   
Delphi.Narium

Registriert seit: 27. Nov 2017
2.415 Beiträge
 
Delphi 7 Professional
 
#41

AW: CMD mit Output

  Alt 1. Apr 2019, 09:02
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.
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
3.901 Beiträge
 
Delphi 12 Athens
 
#42

AW: CMD mit Output

  Alt 1. Apr 2019, 09:19
Ja, das meine ich, mit Regeln wie in meinem Link s.u.
Gibt es da vielleicht schon etwas Fertiges, oder einen allgemeingültigen Shortcut ?
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.415 Beiträge
 
Delphi 7 Professional
 
#43

AW: CMD mit Output

  Alt 1. Apr 2019, 09:44
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 Bei Google suchenalgorithmus zeitberechnung zeitumstellung füttern und dann stöbern, es gibt vieles, interessantes, wissenswerte, unwichtiges ...

Eventuell ein Ansatz: http://www.zeitumstellung.de/
  Mit Zitat antworten Zitat
Maekkelrajter

Registriert seit: 8. Mär 2017
Ort: Köln
118 Beiträge
 
Delphi 11 Alexandria
 
#44

AW: CMD mit Output

  Alt 1. Apr 2019, 12:18
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.
... und für ein bestimmtes Land gilt

Hier https://www.entwickler-ecke.de/topic...t+_2926,0.html ist eine Routine zu finden, die True zurückgibt, wenn ein Datum in der Sommerzeit liegt (nur BRD/DE seit 1980).
Delphi-Quellcode:
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
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 Frac(StrToTime('02:00') 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.
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
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 5   « Erste     345   

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:15 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