在C語(yǔ)言中,要取得JSON數(shù)據(jù)的二級(jí)內(nèi)容,需要使用第三方庫(kù)或手動(dòng)解析JSON字符串。
// 手動(dòng)解析JSON字符串 char* json = "{\"name\":\"小明\",\"age\":18,\"address\":{\"city\":\"北京\",\"province\":\"北京\"}}"; char* city; cJSON* root = cJSON_Parse(json); if(root != NULL) { cJSON* address = cJSON_GetObjectItem(root, "address"); if(address) { cJSON* cityObj = cJSON_GetObjectItem(address, "city"); if(cityObj) { city = cityObj->valuestring; printf("城市:%s", city); } } }
以上代碼中,先使用cJSON_Parse函數(shù)解析JSON字符串,然后通過(guò)cJSON_GetObjectItem函數(shù)獲取到address對(duì)象,并在此對(duì)象中獲取到city對(duì)象并賦值給一個(gè)char類型的變量。
除此之外,還可以使用第三方庫(kù)如json-c或Jansson來(lái)處理JSON數(shù)據(jù)。具體使用方式可以參照官方文檔。
下一篇vue dream