目标 C - 如何以 ISO 8601 格式获取当前时间?

Suc*_*chi 4 date objective-c

我如何以 ISO 8601 格式获取当前时间?它应该看起来像 2011-11-16T22:06Z

Kei*_*son 5

纯 C 解决方案,仅使用标准 C 功能:

#include <stdio.h>
#include <time.h>
int main(void) {
    time_t now = time(NULL);
    struct tm *now_tm = gmtime(&now);
    char iso_8601[] = "YYYY-MM-DDTHH:MMZ"; 
    /* init just to get the right length */

    strftime(iso_8601, sizeof iso_8601, "%FT%RZ", now_tm);
    puts(iso_8601);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)


Hot*_*cks 4

使用一个简单的 NSDateFormatter 调用——“yyyy-MM-dd'T'HH:mmZ”或类似的东西。(不要忘记设置区域设置以避免 AM/PM 混乱。)

  • 我相信它应该是`yyyy-MM-dd'T'HH:mm'Z'` (2认同)