Entwickler-Ecke
Sonstiges (Delphi) - von datum zu datum
Chatfix - So 04.08.02 19:28
Titel: von datum zu datum
hi ich hab in problem, wie kann ich z.B. die Tage zwischen 2 Daten ermitteln?
Es soll ungefähr so aussehen (beispiel):
vom 2.7.2002 bis 10.7.2002 sind es 8 Tage (0 Jahre, 0 Monate, 1 Woche und 1 Tag)
ich habe kein plan wie ich das machen könnte. für ein bischen code wäre ich dankbar
Spike - So 04.08.02 19:36
Schau mal in der Hilfe unter DaysBetween nach. Die Funktion macht genau was Du suchst.
mfG
Spike
Chatfix - So 04.08.02 19:39
ui an die hilfe hab ich gar nich gedacht.. hab zu lange ausgesetzt loool danke trotzdem ich probiers mal gg
wie kann ich das heutige datum rausbekommen?
Spike - So 04.08.02 19:43
Chatfix hat folgendes geschrieben: |
wie kann ich das heutige datum rausbekommen? |
mit der Funktion NOW
Chatfix - So 04.08.02 20:04
also es geht leider nicht wenn ich
label1.caption:=inttostr(daysbetween(09/07/2002,04/08/2002));
mache kommt 0 als ergebnis raus
und bei
label1.caption:=inttostr(daysbetween(09/07/2002,now));
37472
hab ich was falsch gemacht?
Spike - So 04.08.02 20:15
TDateTime ist vom Type Double. Du mußt das Datum erst umwandeln. z.B.:
Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure TForm1.Button1Click(Sender: TObject); var D1,D2 : TDate; begin D1 := StrToDate('9.7.2002'); D2 := StrToDate('4.8.2002'); Label1.Caption:=IntToStr(DaysBetween(D1, D2)); end; |
Spike
Chatfix - So 04.08.02 20:20
und wie funzt das mit "now" hab schon Date(now) probiert will aber nich *fg*
Chatfix - So 04.08.02 20:21
habs jetzt
Quelltext
1: 2: 3: 4: 5: 6:
| var D1,D2 : TDate; begin D1 := StrToDate('9.7.2002'); D2 := TDate(now); Label1.Caption:=IntToStr(DaysBetween(D1, D2)); end; |
jetzt funzt es!!
thx nochmal
Chatfix - So 04.08.02 20:31
habe trotzdem mal noch eine frage, kann ich das auch noch in monate jahre und wochen umrechnen lassen
z.b. halt 8 Tage (0 Jahre, 0 Monate, 1 Woche, 1 Tag)
Spike - So 04.08.02 20:46
wie DaysBetween gibt es auch YearsBetween, MonthsBetween und WeeksBetween.
Spike
Chatfix - So 04.08.02 20:54
ja aber wie bekomme ich dann den rest also 0-6 Tage raus?
Frankle - So 04.08.02 21:17
Titel: answer
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TimeDiffStr(dt1, dt2: TDateTime): string; var h, m, s, s100: Word; begin dt1 := dt2 - dt1; DecodeTime(dt1, h, m, s, s100); Result := IntToStr(Trunc(dt1)) + ' Tage ' + IntToStr(h) + ' Stunden ' + IntToStr(m) + ' Minuten '; end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!