在c++里获取如2022-05-16 15:23:35这样的日期时间字符串无法通过一句话完成,下面的函数可以做到:
string get_date_time(time_t timestamp = time(NULL))
{
char buffer[20] = {0};
struct tm *info = localtime(×tamp);
strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", info);
return string(buffer);
}
通过修改buffer的长度和strftime的字符串格式,可以得到我们所需的字符串格式,如2022年5月16日 16时55分33秒,只是注意UTF-8的一个中文占3个字节,所以buffer的容量一定要给够。



