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

c json 取data數據

謝彥文1年前8瀏覽0評論

C JSON 取 Data 數據

C JSON 是一種常用的 C 語言 JSON 解析庫,在處理 JSON 數據的過程中,經常需要從 JSON 數據中取出需要的具體數據。本文介紹如何使用 C JSON 取出 JSON 數據的 Data 部分。

1. 獲取 JSON 數據

要取出 JSON 數據的 Data 部分,首先需要使用 C JSON 讀取整個 JSON 數據。以下是一個例子:
#include "cJSON.h"
#include "stdio.h"
int main() {
char* json_data = "{\"name\":\"John\", \"age\":25, \"city\":\"New York\", \"data\": [1, 2, 3]}";
cJSON* root = cJSON_Parse(json_data);
if (!root) {
printf("Error before:%s\n",cJSON_GetErrorPtr());
return 1;
}
cJSON_Delete(root);
return 0;
}

在上面的例子中,我們定義了一個 JSON 字符串 json_data,然后使用 cJSON_Parse() 函數將其解析為一個 cJSON 對象 root。

2. 獲取 Data 數據

要獲取 JSON 數據的 Data 部分,我們首先需要找到 Data 在 JSON 數據中的位置??梢酝ㄟ^下面的代碼獲得 Data 對應的 cJSON 對象:
cJSON* data = cJSON_GetObjectItem(root, "data");

cJSON_GetObjectItem() 函數根據鍵名獲取 JSON 對象中對應的值,這里的 "data" 就是 JSON 數據中 Data 部分的鍵名。

3. 解析 Data 數據

獲取到 Data 的 cJSON 對象以后,我們可以通過 cJSON 的 API 來解析 JSON 數據。以下是一個例子:
int i;
cJSON* item = NULL;
for (i = 0; i< cJSON_GetArraySize(data); i++) {
item = cJSON_GetArrayItem(data, i);
printf("%d ", item->valueint);
}

cJSON_GetArraySize() 函數返回數組的大小,然后可以通過 cJSON_GetArrayItem() 函數獲取 Data 數組中每個元素的 cJSON 對象。使用 cJSON 對象的 valueint 變量即可獲取元素的整型值。

完整代碼如下:

#include "cJSON.h"
#include "stdio.h"
int main() {
char* json_data = "{\"name\":\"John\", \"age\":25, \"city\":\"New York\", \"data\": [1, 2, 3]}";
cJSON* root = cJSON_Parse(json_data);
if (!root) {
printf("Error before:%s\n",cJSON_GetErrorPtr());
return 1;
}
cJSON* data = cJSON_GetObjectItem(root, "data");
int i;
cJSON* item = NULL;
for (i = 0; i< cJSON_GetArraySize(data); i++) {
item = cJSON_GetArrayItem(data, i);
printf("%d ", item->valueint);
}
cJSON_Delete(root);
return 0;
}