in char eine variable einfügen
-
Moin habe ein kleines Problem möchte eine datei mit verschiedenen namen erstellen. Diese werden durch eine variable erstellt.
habe mir was überlegt.
//Auslesen der Systemzeit
time_t zeit;
time(&zeit);char *ff=ctime(&zeit);
char *neuedatei ="C:\\Optimierung2\\results\\backup\\backup";
for(int i=35;i<4;i++)
{
neuedatei[i] =ff[i-35];
}läuft leider nicht...die datei erstellt er leider heißt sie backup und nicht systemzeit...
-
Hi,
probiere es mal so, ich hoffe es hilft dir da ich nur C++ ein wenig kann und C so gut wie gar nicht:
#include <stdio.h> #include <time.h> int main() { time_t my_time; time(&my_time); char str[256]; char* prefix = "C:\\foo\\bar\\backup"; sprintf(str, "%s-%s", prefix, ctime(&my_time)); printf("%s", str ); return 0; }Gruß Blue-Tec
-
#include <sstream> #include <fstream> #include <ctime> using namespace std; int main () { // Zeitstempel time_t timeStamp = time(0); tm* time = localtime(&timeStamp); // Filename: Backup_YYYYMMDD.bak stringstream fileName; fileName << "Backup_" << time->tm_year+1900 << time->tm_mon+1 << time->mday << ".bak"; // Datei öffnen bzw. erstellen, wenn nicht vorhanden fstream file (fileName.str(), fstream::out); // In Datei schreiben... file << "Schreibe dies in die Datei!"; file.close(); return 0; }
-
@Roger Wilco habe ein kleines problem.
// Zeitstempel
time_t timeStamp = time(0);
tm* time = localtime(&timeStamp);// Filename: Backup_YYYYMMDD.bak
stringstream fileName;
fileName << "C:\\Optimierung2\\results\\backup\\backup_" << time->tm_year+1900 << time->tm_mon+1 << time->tm_mday << ".xtp";// Datei öffnen bzw. erstellen, wenn nicht vorhanden
fstream file (fileName.str(), fstream::out);
file.close();error C2664: 'std::basic_fstream<_Elem,_Traits>::basic_fstream(const char *,std::ios_base::openmode,int)': Konvertierung des Parameters 1 von 'std::basic_string<_Elem,_Traits,_Ax>' in 'const char *' nicht möglich
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> Kein benutzerdefinierter Konvertierungsoperator verfügbar, der diese Konvertierung durchführen kann, oder der Operator kann nicht aufgerufen werdenich möchte nur die datei umbennen, wollte es mit rename(altername,fileName.str()) versuchen. kriege es auch nicht hin.
-
fstream file (fileName.str().c_str(), fstream::out);
-
sehr gut, vielen dank.
es läuft
