linux 中与标准库的strftime相对的有一个strptime的函数,这个函数可以用来解析log文件中的时间字符串,例子:
#include<time.h>
#include<iostream>
using namespace std;
int main() {
tm tm;
char buf[255];
strptime("24/Aug/2011:09:42:35", "%d/%b/%Y:%H:%M:%S" , &tm);
// strptime("2001-11-12 18:31:01", "%Y-%m-%d %H:%M:%S", &tm);
strftime(buf, sizeof(buf), "%d %b %Y %H:%M", &tm);
puts(buf);
return 0;
#include<iostream>
using namespace std;
int main() {
tm tm;
char buf[255];
strptime("24/Aug/2011:09:42:35", "%d/%b/%Y:%H:%M:%S" , &tm);
// strptime("2001-11-12 18:31:01", "%Y-%m-%d %H:%M:%S", &tm);
strftime(buf, sizeof(buf), "%d %b %Y %H:%M", &tm);
puts(buf);
return 0;
}