在C語言中,使用JSON字符串時需要進行解析操作,其中一個常見的JSON格式就是字符串數組。本文將介紹如何使用C語言對JSON字符串數組進行解析。
{ "fruit": [ "apple", "banana", "orange" ] }
以上JSON格式中,fruit是一個數組,包含了三個字符串元素。針對這種JSON格式,使用C語言進行解析需要使用第三方庫cJSON。
首先,使用cJSON_Parse()函數將JSON字符串解析成cJSON對象:
const char* json = "{\"fruit\": [\"apple\", \"banana\", \"orange\"]}"; cJSON* root = cJSON_Parse(json);
然后,使用cJSON_GetObjectItem()獲取數組元素:
cJSON* fruit_array = cJSON_GetObjectItem(root, "fruit"); for (int i = 0; i< cJSON_GetArraySize(fruit_array); i++) { cJSON* fruit_item = cJSON_GetArrayItem(fruit_array, i); printf("%s\n", fruit_item->valuestring); }
以上代碼可以輸出fruit數組的每個元素。
需要注意的是,cJSON_GetObjectItem()和cJSON_GetArrayItem()的返回值均為cJSON對象,需要使用cJSON_GetArraySize()和cJSON_Print()等函數獲取其它屬性。
通過以上方法,使用C語言可以輕松實現JSON字符串數組的解析操作。