欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 轉json時間格式

傅智翔2年前8瀏覽0評論

C語言中轉換時間格式為JSON格式,需要使用一些轉換庫和代碼。JSON格式時間的標準格式為:

{
"timestamp": "2021-05-27T14:32:10+00:00",
"tz": "UTC"
}

其中,timestamp為ISO 8601時間格式,包含時區信息。tz為時區信息,可以使用時區縮寫,如“UTC”。

下面是使用C語言將時間轉換為JSON格式的代碼:

#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include <cjson/cJSON.h>
char* time_to_json(time_t t) {
struct tm* tm = gmtime(&t);
char buf[32];
strftime(buf, sizeof(buf), "%Y-%m-%dT%H:%M:%S", tm);
char* json_str;
cJSON* json;
json = cJSON_CreateObject();
cJSON_AddStringToObject(json, "timestamp", buf);
cJSON_AddStringToObject(json, "tz", "UTC");
json_str = cJSON_Print(json);
cJSON_Delete(json);
return json_str;
}
int main(int argc, char* argv[]) {
char* json_str;
time_t t = time(NULL);
json_str = time_to_json(t);
printf("%s\n", json_str);
free(json_str);
return 0;
}

代碼中使用了cJSON庫,這是一個輕量級的JSON庫,可以用來生成和解析JSON字符串。在time_to_json函數中,首先使用gmtime函數將時間轉換為UTC時間。然后使用strftime函數將時間轉換為ISO 8601時間格式,并將其存儲在buf中。

接著,使用cJSON_CreateObject函數創建一個JSON對象,并使用cJSON_AddStringToObject函數將時間戳和時區添加到JSON對象中。在最后使用cJSON_Print函數將JSON對象打印成字符串,并使用cJSON_Delete函數釋放內存。

在主函數中,我們調用time函數獲取當前時間,并將其傳遞給time_to_json函數。time_to_json函數返回JSON字符串,并通過printf函數打印出來。最后,使用free函數釋放JSON字符串的內存。