sirve - C-Convierte time_t en una cadena con formato AAAA-MM-DD HH: MM: SS
time_t time time_t*) (2)
¿Hay alguna manera de convertir un time_t
en std::string
con el formato AAAA-MM-DD HH: MM: SS automáticamente mientras se mantiene el código portátil?
Tu única opción real fuera de mi cabeza es escribir tu propia rutina o usar la función ctime () definida en POSIX.1 / C90. Ctime () vale la pena investigarlo, pero si su fecha ya no está en la zona horaria correcta, se encontrará con problemas.
EDITAR: No pensé en usar la hora local como lo menciona Jerry a continuación. Convirtiéndolo en una estructura tm le da más posibilidades, incluyendo lo que él menciona, y strptime ().
Use localtime
para convertir time_t
en una struct tm
. Puede usar strftime
para imprimir los datos deseados a partir de eso.
char buff[20];
time_t now = time(NULL);
strftime(buff, 20, "%Y-%m-%d %H:%M:%S", localtime(&now));