strptime :将格式化的字符串解析存储到struct tm结构中去
strftime :将struct tm结构格式化为指定字符串
代码示例
#include <iostream>
#include <time.h>
#include <string.h>
using namespace std;
int main()
{
const char *time_str = "2019/11/13 16:03:00";
char readable[128]= {0};
struct tm *tm = NULL;
time_t lt;
lt =time(NULL);
//将当前时间存储到tm结构中去
tm=localtime(<);
//将tm结构格式化为指定字符串
strftime(readable,128,"%Y/%m/%d %H:%M:%S",tm);
cout<<"readable1 = "<<readable<<endl;
struct tm tm1 = {0};
//将格式化的字符串解析存储到tm结构中去
strptime(time_str,"%Y/%m/%d %H:%M:%S",&tm1);
strftime(readable,128,"%Y/%m/%d %H:%M:%S",&tm1);
cout<<"readable2 = "<<readable<<endl;
//将tm中的数据转换为秒
strftime(readable,128,"%s",&tm1);
cout<<"readable3 = "<<readable<<endl;
return 1;
}
执行结果
readable1 = 2019/12/18 23:02:40
readable2 = 2019/11/13 16:03:00
readable3 = 1573678980