Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Differenz v. 2 Datumsangaben

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
31.03.2004, 15:24 Uhr
~Klaus
Gast


Hallo,
kann mir bitte jemand sagen, wie ich die Differenz von
zwei Datumsangaben in Tagen herausfinden kann.
Beispiel:
DatumA : 31:03:2004
DatumB : 04:05:2004
Diff : xx Tage

Gibt es da bereits etwas oder muss ich da manuell ran ?

Danke, Klaus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
31.03.2004, 15:28 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


würd nicht drauf wetten aber meist sind das immer nur secunden ab einem bestimmten datum...
heisst also theoretisch wenn du datum2-datum1 rechnen kannst müsstest du die anzahl in sekunden haben die vergangen sind (also noch durch 24*3600 teilen)
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
31.03.2004, 16:07 Uhr
~bambi
Gast


hi ich glaube folgendes hilft dir!

COleDateTime deinDatum;
deinDatum.Format("31.03.2004");

COleDateTime = dtMoonwalk;
dtMoonwalk = COleDateTime(1969, 7, 20, 0, 0, 0);
COleDateTimeSpan dtDiff = deinDatum - dtMoonwalk;
CString strMessage;
strMessage.Format("Tage seit dem ersten Mondspaziergang: %d ", (int)dtDiff.GetTotalDays()); //## Hier kannst du auch Sek. usw errechnen
AfxMessageBox(strMessage);

hab das jetzt ganz schnell zusammengefuchtelt , aber so sollte es eigentlich gehen ! dtDiff.GetTotalDays ist eine Memberfunktion von Timespan , es geht auch Sekunden , Minuten usw...


hope this helps
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
31.03.2004, 16:11 Uhr
~Klaus
Gast


Vielen Dank für die Hilfe !

Gruß,Klaus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
31.03.2004, 16:31 Uhr
~Klaus
Gast


Leider zu früh gefreut ...

Wenn ich das eingebe:

COleDateTime deinDatum;
deinDatum.Format("31.04.2004");
COleDateTime dtMoonwalk;
dtMoonwalk = COleDateTime(2004, 3, 31, 0, 0, 0);
COleDateTimeSpan dtDiff = deinDatum - dtMoonwalk;
int days = (int)dtDiff.GetTotalDays();

kommt bei days : -38077 raus.

Wo liegt den da der Fehler ?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
31.03.2004, 16:37 Uhr
~Klaus
Gast



C++:
//Fehler gefunden : deinDatum.Format("31.04.2004");

//So gehts besser:

COleDateTime  dtMoonwalk;
COleDateTime deinDatum;
deinDatum   = COleDateTime(2004, 4, 1, 0, 0, 0);
dtMoonwalk = COleDateTime(2004, 3, 30, 0, 0, 0);
COleDateTimeSpan dtDiff = deinDatum - dtMoonwalk;
int days = (int)dtDiff.GetTotalDays();



Trotzdem: Danke für den "COleDateTimeSpan dtDiff " Tipp !

Klaus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
01.04.2004, 01:09 Uhr
~bambi
Gast


kein thema
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
01.04.2004, 01:26 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


habs mal eben spassenshalber mit CTime probiert da frisst er es z.b. so

C++:
int days=(CTime::GetCurrentTime()-CTime(2004,3,31,0,0,0)).GetDays();


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: