Einzelnen Beitrag anzeigen

Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#9

Re: Differenz zwischen Datum / Uhrzeit

  Alt 22. Dez 2006, 14:45
Also ich habs jetzt so probiert, dass ich den Monat rausgenommen habe und stattdessen Wochen, aber irgendwie häng ich noch am selben Problem...

Solange es 0 Jahre sind, ist alles kein Problem, doch ab einem Jahr wird das Jahr mit angezeigt, jedoch zählen die Wochen weiterhin hoch, z.B. 19 Jahre, 955 Wochen,...
Ich weiß aber auch nicht wie ich es verhindern kann, da ich nicht weiß ob ich nun durch 52 oder 53 Teilen muss :/

So sieht man aktueller Quelltext dazu aus:

Delphi-Quellcode:
function diff(Datum: TDateTime): string;
var
    Differenz, jetzt: TDateTime;
    jahre, monate, tage, h, m, s, ms, woche: Word;
begin
  result := '';
  jetzt := Now;
  Differenz := jetzt - Datum;
  jahre := InJahren(Datum, Now);
  woche := WeeksBetween(jetzt, Datum);
  DecodeTime (Differenz, h, m, s, ms);
  tage := Trunc(Differenz);
  if woche <> 0 then
    tage := tage mod 7;
  if Jahre <> 0 then result := InttoStr(Jahre) + ' Jahre ';
  if woche <> 0 then result := result + InttoStr(woche) + ' Woche ';
  if tage <> 0 then result := result + InttoStr(tage) + ' Tage ';
  if h <> 0 then result := result + InttoStr(h) + ' Stunden ';
  if m <> 0 then result := result + InttoStr(m) + ' Minuten ';
  if s <> 0 then result := result + InttoStr(s) + ' Sekunden ';
end;
Wäre gut wenn mir noch jemand helfen könnte, dass mit den Sekunden hochrechnen bekomme ich irgendwie ni so ganz hin, daher hänge ich immer noch an meinem eigenen Quelltext
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat