Mikä olisi järkevin tapa tallentaa nykyinen aika tiedostoon?
Kokeilin tuota asctime-funktiota, mutta sekin antaa väärässä muodossa tuon ajan.
Pitäisi saada yksinkertaisesti year-month-day-hour-min-sec numeroina, ja tämä sen takia, että sitä on sitten mukavampi lukea sieltä uudestaan.
Eli jos tuohon on joku yksinkertainen juttu, niin kertokaa toki. Olisi suureksi avuksi!
http://cplusplus.com/reference/clibrary/ctime/
Sivun alareunasta löytyy esimerkkikin, vaihdat vain puts():n tiedostoon kirjoitukseksi.
Juu kyllä minä tuon kahtelinkin jo aikasemmin, vaan kun en älyä sitä, miten saan sen ajan juuri halutussa muodossa siihen tiedostoon.
Siis tuleeko se silloin jotenkin näin:
fputs(nykyinen_aika,file);
vai:
fputs(&Y-&d-&m jne, file);
vai miten? Ei oikein mikään muu kuin tuo asctime tunnu toimivan ja silläkin se tulee vähän väärässä muodossa.
Tiedät siis miten ajan saa oikeaan muotoon mutta et tiedä miten tiedostoon kirjoitetaan? Muunnetaas vähän tuota esimerkkiä:
#include <stdio.h> #include <time.h> int main () { time_t rawtime; struct tm * timeinfo; char buffer [80]; time ( &rawtime ); timeinfo = localtime ( &rawtime ); //Aika muuttujaan buffer strftime (buffer,80,"%Y-%m-%d-%H-&M-%S: Tapahtui sitä ja tätä.",timeinfo); //Tiedosto auki FILE filu; filu = fopen("aika.txt", "a"); //Aika tiedostoon muuttujasta buffer fputs(buffer,filu); //Tiedosto kiinni fclose(filu); return 0; }
Tajusitko?
Kyllä. Kiitän ja kumarran!
Aihe on jo aika vanha, joten et voi enää vastata siihen.