Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Aktuelle Uhrzeit

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
09.05.2007, 20:52 Uhr
~Amon.Amarth II
Gast


Hallo

Ich versuche die aktuelle Uhrzeit folgendermaßen zu bekommen:

C++:
             time_t timestamp;
             tm *now;
             timestamp = time(0);
             localtime_s(now, &timestamp);

             int hours, min, sec;
             hours = now->tm_hour;
             min = now->tm_min;
             sec = now->tm_sec;

             text = "[" + hours.ToString() + ":" + min.ToString() + ":" + sec.ToString() + "] ";


Jedoch gibt das nur eine Fehlermeldung.
Meinen Nachforschungen nach muss es am localtime_s() liegen. Nur was ist falsch?

AMon
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.05.2007, 22:03 Uhr
CppProgrammer



Nachdem du das hier rein gepostet hast, nehme ich mal an, dass du auch die MFC zur Verfügung hast, womit das Ganze auch viel einfacher geht.

C++:
CString GetTimeStr(LPCTSTR pFormat)
{
    CTime Time = CTime::GetCurrentTime();
    CString str = Time.Format(pFormat);
    return str;
}
// Das kannst du dann folgendermaßen verwenden:
// CString time = GetTimeStr("[%H:%M:%S]");


Dieser Post wurde am 09.05.2007 um 22:06 Uhr von CppProgrammer editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
09.05.2007, 22:10 Uhr
~Amon.Amarth II
Gast


Anke erstmal
Also ich habe Visual C++ Express Edition.

Funktioniert das damit?

Oder woher bekomme ich diese Microsoft Foundation Classes?

Amon
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.05.2007, 22:31 Uhr
CppProgrammer



Naja, wenn du nur die Express Edition hast, wird dir der obige Code nicht weiterhelfen können, da du mit der Express Edition nunmal leider keine MFC Projekte erstellen kannst.
Du kannst es allerdings beispielsweise so machen:

C++:
time_t rawtime; time(&rawtime);
tm *timeinfo = localtime(&rawtime);

int h = timeinfo->tm_hour;
int min = timeinfo->tm_min;
int sec = timeinfo->tm_sec;

printf("[%d:%d:%d]", h, min, sec);

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
09.05.2007, 22:37 Uhr
~Amon.Amarth II
Gast


Hallo nochmal,

Danke für den Code. Aber er bereitet mir leider ein paar Probleme.

Code:
i:\dokumente und einstellungen\pb\eigene dateien\visual studio 2005\projects\virenscanner\virenscanner\Form1.h(301) : warning C4996: 'localtime': This function or variable may be unsafe. Consider using localtime_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
        J:\XP\Microsoft Visual Studio 8\VC\include\time.inl(114): Siehe Deklaration von 'localtime'
i:\dokumente und einstellungen\pb\eigene dateien\visual studio 2005\projects\virenscanner\virenscanner\Form1.h(308) : error C3861: "printf": Bezeichner wurde nicht gefunden.

Wegen der ersten Meldung hatte ich oben auch localtime_s() versucht, was aber nicht so geklappt hat.

Am besten erkläre ich auch mal wozu ich das brauche. Ich habe ein Programm, das eine Logdatei anlegt. Nun will ich vor jedem Eintrag eben noch die Uhrzeit im Format [Stunde:Minute:Sekunde] haben.

Das ganze ist eine Windows Form Anwendung.

Bis morgen, Amon!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
09.05.2007, 22:58 Uhr
CppProgrammer



Du kannst dieses printf() natürlich auch weglassen. Es wäre nur für eine Konsolenanwendung zur Ausgabe gedacht gewesen. Deine Zeit hast du ja dann immernoch in den int Variablen mit denen du dann weiterarbeiten kannst.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
10.05.2007, 18:13 Uhr
~Amon.Amarth II
Gast


So, ok, vielen Dank

Ich habe das ganze noch so ergänzt, dass z.B. [5:12:3] zu [05:12:03] wird.

Jetzt klappt es perfekt.

Danke
 
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: