Aprire un file che ha il nome della data odierna

di il
1 risposte

Aprire un file che ha il nome della data odierna

Salve,
sono nuovo del forum e anche di programmazione!
Devo creare un programma in C++ che ogni volta che viene avviato crea un file.txt che ha il nome della data e ora attuali.. va bene anche se data e ora sono in formato timestamp. Come posso fare?
ofstream myfile;
myfile.open("prova.txt");
myfile << log;
myfile.close();
Il mio codice è questo e vorrei mettere al posto di "prova.txt" una variabile contenente il valore del timespamp o contenente data e ora.. come faccio?

Grazie in anticipo!

1 Risposte

  • Re: Aprire un file che ha il nome della data odierna

    Ciao lordams, vorrei suggerirti di specificare il modo di apertura del file (input, output, binario, ecc. ) e dato che devi creare un nuovo file, usa ios::out:
    
    myfile.open("prova.txt",ios::out);
    
    Per quanto riguarda il nome del file, puoi usare la funzione 'strftime()' la quale ritorna una stringa che contiene la data in base ad una stringa di formattazione:
    size_t strftime ( char * ptr, size_t maxsize, const char * format, const struct tm * timeptr );
    per fare ciò devi includere la libreria <ctime>. Un esempio potrebbe essere il seguente:
    
    time_t dataCorrente=time(NULL);
    struct tm *strutturaData=localtime(&time);
    char fileName[50];
    strftime(fileName , 50 , "%Y-%m-%d.txt" , strutturaData);
    myfile.open(fileName,ios::out);
    myfile<<log;
    myfile.close();
    
Devi accedere o registrarti per scrivere nel forum
1 risposte