色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 讀取json中的時間數據

張吉惟2年前9瀏覽0評論

C語言操作讀取json中的時間數據,可以使用第三方庫cJSON。

首先需要安裝cJSON庫,運行以下命令:

git clone https://github.com/DaveGamble/cJSON.git
cd cJSON
make

下面是讀取JSON文件中時間數據的示例代碼:

#include <stdio.h>
#include <cJSON.h>
int main() {
// 讀取JSON文件
FILE *f = fopen("example.json", "rb");
fseek(f, 0, SEEK_END);
long fsize = ftell(f);
fseek(f, 0, SEEK_SET);  // same as rewind(f);
char *json_str = malloc(fsize + 1);
fread(json_str, fsize, 1, f);
fclose(f);
// 解析JSON數據
cJSON *json = cJSON_Parse(json_str);
free(json_str);
// 讀取時間數據
cJSON *time_obj = cJSON_GetObjectItem(json, "time");
char *time_str = cJSON_GetStringValue(time_obj);
time_t time = strtotime(time_str);
printf("時間:%ld\n", time);
// 釋放內存
cJSON_Delete(json);
return 0;
}

這里使用了一個自定義函數strtotime(),用于將JSON字符串轉換為時間戳。

time_t strtotime(const char *str) {  
struct tm tm;  
time_t t;  
char buf[32];  
strcpy(buf, str);  
strptime(buf, "%Y-%m-%d %H:%M:%S", &tm);  
t = mktime(&tm);  
return t;  
}

以上代碼中,strptime()函數可以將字符串格式的時間轉換為struct tm類型,然后再使用mktime()函數轉換為時間戳。

這樣,就可以在C語言中方便地讀取JSON中的時間數據了。