C語言中,可以通過第三方庫實現JSON數據的解析和操作。對于嵌套的JSON數據,需要使用嵌套的數據結構來表示。
#include <stdio.h>#include <string.h>#include <cJSON.h>int main() { char *json_data = "{\"name\":\"Lucas\", \"age\":26, \"hobby\":{\"game\":\"playing\", \"music\":\"listening\"}}"; cJSON *root = cJSON_Parse(json_data); cJSON *name = cJSON_GetObjectItem(root, "name"); cJSON *age = cJSON_GetObjectItem(root, "age"); cJSON *hobby = cJSON_GetObjectItem(root, "hobby"); cJSON *game = cJSON_GetObjectItem(hobby, "game"); cJSON *music = cJSON_GetObjectItem(hobby, "music"); printf("Name: %s\n", name->valuestring); printf("Age: %d\n", age->valueint); printf("Hobby - Game: %s\n", game->valuestring); printf("Hobby - Music: %s\n", music->valuestring); cJSON_Delete(root); return 0; }
上述代碼通過第三方庫cJSON來解析JSON數據,并使用嵌套的數據結構cJSON來表示嵌套的JSON數據。通過cJSON_GetObjectItem函數可以獲取JSON數據中的子項,并通過其value屬性獲取其值。
上述JSON數據中,嵌套了一個名為hobby的對象,其屬性有game和music。通過獲取hobby子項后,再獲取其子項game和music,即可獲取hobby對象中的值。
上一篇html怎么設置一個點
下一篇gson 雙層json