Die Standardbibliothek stell eh einige Funktionen zur Verfügung:
http://www.proggen.org/doku.php?id=c:lib:time:strftime
http://www.proggen.org/doku.php?id=c:lib:time:asctime
http://www.proggen.org/doku.php?id=c:lib:time:localtime
Dateiname soll mit jedem Speichervorgang "hochzählen"
Re: Dateiname soll mit jedem Speichervorgang "hochzählen"
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
Re: Dateiname soll mit jedem Speichervorgang "hochzählen"
Die Funktion "strftime" zu benutzen, würde bedeuten, Strings als Char-Arrays behandeln zu müssen (wie in C), was mir persönlich nicht so gefällt. Formatieren, möchte ich die Ausgabe aber schon, aber in mit C++! Weiß jemand, wie ich, nachdem ich notiert habe, Datum und Uhrzeit formatieren kann (außer mit "strftime")?
Ich denke, man müsste "asctime" irgendwie manipulieren können, damit nicht das Standard-Ausgabeformat (Www Mmm tt hh mm ss jjjj) verwendet wird.
In jedem Fall aber danke schon einmal für die Links, die mir einen Aha-Effekt beschert haben.
Code: Alles auswählen
timeinfo = localtime( &rawtime );
Ich denke, man müsste "asctime" irgendwie manipulieren können, damit nicht das Standard-Ausgabeformat (Www Mmm tt hh mm ss jjjj) verwendet wird.
In jedem Fall aber danke schon einmal für die Links, die mir einen Aha-Effekt beschert haben.
Re: Dateiname soll mit jedem Speichervorgang "hochzählen"
Kann mir einer erklären, warum das hier nicht funktioniert:
Das Programm stürzt nicht ab, gibt aber auch den String nicht aus. (Oder es gibt ihn aus, doch der ist leer.)
Code: Alles auswählen
#include <cstdlib>
#include <iostream>
#include <ctime>
using namespace std;
int main( int argc, char *argv[] )
{
string FileName = "";
time_t rawtime;
struct tm* timeinfo;
time( &rawtime );
timeinfo = localtime( &rawtime );
FileName = timeinfo->tm_hour;
cout << FileName << endl;
system( "PAUSE" );
return EXIT_SUCCESS;
}
Re: Dateiname soll mit jedem Speichervorgang "hochzählen"
Problem gelöst. Da ich für das "open"-Kommando ebenfalls einen String im Char-Array-Format benötige, kann ich damit leben, "strftime" zu verwenden. Ich habe also jetzt meinen Zeitstempel im Dateinamen.