C 語言中如何獲取 Json 字符串數組呢?
首先,我們需要使用第三方庫來讀取 Json 字符串。在 C 語言中,經常使用 cJSON 庫來處理 Json 格式的數據。cJSON 是一個輕量級、快速、可擴展的 Json 解析庫,具有豐富的 API 接口,可以方便地處理 Json 字符串。
下面是一個簡單的示例代碼,展示了如何使用 cJSON 庫解析 Json 字符串數組:
#include <stdio.h> #include <cJSON.h> int main() { char json[] = "[{\"name\":\"Alice\", \"age\": 20}, {\"name\":\"Bob\", \"age\": 25}]"; cJSON *root = cJSON_Parse(json); if (root == NULL) { printf("Error before: %s\n", cJSON_GetErrorPtr()); return 1; } int size = cJSON_GetArraySize(root); for (int i = 0; i < size; i++) { cJSON *item = cJSON_GetArrayItem(root, i); cJSON *name = cJSON_GetObjectItem(item, "name"); cJSON *age = cJSON_GetObjectItem(item, "age"); printf("name: %s, age: %d\n", cJSON_GetStringValue(name), age->valueint); } cJSON_Delete(root); return 0; }
這段代碼使用 cJSON_Parse 函數將 Json 字符串解析成 cJSON 對象。然后使用 cJSON_GetArraySize 函數獲取 Json 數組的長度,再經過循環遍歷獲取數組中每個元素的具體內容。使用 cJSON_GetObjectItem 函數獲取 Json 對象中對應的元素。
需要注意的是,cJSON 庫在使用完畢后,需要使用 cJSON_Delete 函數釋放內存,避免內存泄漏。
總之,使用 cJSON 庫可以方便地處理 Json 字符串數組,提高開發效率。
上一篇vue 3.0升級
下一篇gson給json中添加