JSON是一種輕量級數據交換格式,常被用于將數據從服務器傳輸到客戶端。C語言是一種廣泛使用的編程語言,具有高效性和靈活性。C JSON解析器使得在C語言中解析JSON變得容易且高效。當我們需要將JSON數據轉換為一個列表時,可以使用以下方法來解析。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "cJSON.h"
int main()
{
char* data = "{\"fruit\":[{\"name\":\"apple\",\"color\":\"red\",\"weight\":\"0.2kg\"},{\"name\":\"banana\",\"color\":\"yellow\",\"weight\":\"0.1kg\"}]}";
//解析JSON數據
cJSON* root = cJSON_Parse(data);
//獲取fruit數據
cJSON* fruit = cJSON_GetObjectItem(root, "fruit");
//創建list,并將fruit數據添加到list中
int length = cJSON_GetArraySize(fruit);
int i;
for(i = 0; i < length; i++)
{
cJSON* item = cJSON_GetArrayItem(fruit, i);
char* name = cJSON_GetObjectItem(item, "name")->valuestring;
char* color = cJSON_GetObjectItem(item, "color")->valuestring;
char* weight = cJSON_GetObjectItem(item, "weight")->valuestring;
printf("fruit: name=%s, color=%s, weight=%s\n", name, color, weight);
}
//釋放內存
cJSON_Delete(root);
return 0;
}
在以上代碼中,我們首先解析JSON數據,然后使用“cJSON_GetObjectItem”函數獲取JSON數據中的“fruit”數據。接著我們根據fruit數據創建cJSON的list,我們遍歷遍歷fruit中的元素并獲取需要的數據(這里是name,color,weight),最終添加到list中。最后,我們釋放內存并輸出結果。
使用C JSON解析器,我們可以方便高效地將JSON數據解析為一個列表。C JSON解析器是一個靈活的工具,可以幫助我們在C語言中處理JSON數據。
上一篇python 數組增維
下一篇mysql創建數據表格式