对于一些动态保存文件的小伙伴来讲,动态命名文件是一个常规的需求,在这里提供一个具体的方法,用时间戳的形式来命名文件,避免重复,啥也不说了,直接上代码。
std::string exact_time::toStringForFilename() const
{
char temp[23]{0};
snprintf(temp,
23,
"%04d%02d%02d_%02d%02d%02d.%03d%03d",
tm_year + 1900,
tm_mon + 1,
tm_mday,
tm_hour,
tm_min,
tm_sec,
tm_millisec,
tm_microsec);
return std::string(temp);
}
验证结果如下:
这里使用的时候,头文件要包含#include<ctime>,#include<string>