在C語言中,json轉換為對象數組是一個非常常見且重要的操作。本文將介紹如何使用C語言將json數據轉換為對象數組。
首先,我們需要加載json數據。在C語言中,通常使用cJSON庫來處理json數據。以下是如何加載json數據并將其轉換為cJSON對象:
#include "cJSON.h" char * jsonStr = "{\"name\":\"Tom\", \"age\":20}"; cJSON * root = cJSON_Parse(jsonStr);
現在我們已經擁有了一個cJSON對象,接下來的步驟是將其轉換為對象數組。我們可以遍歷cJSON對象并將每個鍵值對轉換為一個對象。以下是一個示例代碼,該代碼將從cJSON對象中取出每個鍵值對并將其轉換為一個對象:
typedef struct { char * name; int age; } Person; Person * jsonToObjArr(cJSON * json) { int size = cJSON_GetArraySize(json); Person * arr = malloc(sizeof(Person) * size); for(int i=0; ivaluestring; cJSON * ageJson = cJSON_GetObjectItem(obj, "age"); p.age = ageJson->valueint; arr[i] = p; } return arr; } int main() { char * jsonStr = "[{\"name\":\"Tom\", \"age\":20}, {\"name\":\"Jerry\", \"age\":30}]"; cJSON * root = cJSON_Parse(jsonStr); Person * arr = jsonToObjArr(root); for(int i=0; i 以上就是將json數據轉換為對象數組的完整示例。
上一篇python 自動聽課
下一篇python 最常應用的