Convert Epoch Time string to Time

后端 未结 2 1496
野的像风
野的像风 2020-12-18 14:32

I\'ve been looking for a way to convert a string (in Epoch time) into a date.

Basically, I need to take this: 1360440555 (in string form) and make it in

2条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-18 14:57

    You could use %s (GNU extension), to convert POSIX timestamp given as a string to the broken-down time tm:

    #define _XOPEN_SOURCE
    #include 
    #include 
    #include 
    
    int main() {
        struct tm tm;
        char buf[255];
    
        memset(&tm, 0, sizeof(struct tm));
        strptime("1360440555", "%s", &tm);
        strftime(buf, sizeof(buf), "%b %d %H:%M %Y", &tm);
        puts(buf); /* -> Feb 09 20:09 2013 */
        return 0;
    }
    

    Note: the local timezone is UTC (with other timezone the result is different).

提交回复
热议问题