JSON是一種輕量級的數據交換格式,常用于前后端數據傳輸和存儲。在C語言中,我們可以用第三方庫cJSON來方便地生成和解析JSON。
#include "cJSON.h" int main() { // 創建json對象 cJSON *root = cJSON_CreateObject(); // 添加鍵值對 cJSON_AddStringToObject(root, "name", "Tom"); cJSON_AddNumberToObject(root, "age", 20); // 生成json字符串 char *json_str = cJSON_Print(root); printf("%s", json_str); // 解析json字符串 cJSON *root2 = cJSON_Parse(json_str); char *name = cJSON_GetObjectItem(root2, "name")->valuestring; int age = cJSON_GetObjectItem(root2, "age")->valueint; printf("%s, %d", name, age); // 釋放內存 cJSON_Delete(root); cJSON_Delete(root2); free(json_str); return 0; }
在上面的代碼中,我們首先創建了一個cJSON對象root,并通過cJSON_AddXXXToObject函數不斷添加鍵值對。最后通過cJSON_Print將其轉換為JSON字符串輸出。接著我們又通過cJSON_Parse將其解析為一個新的cJSON對象root2,并通過cJSON_GetObjectItem獲取指定鍵的值。最后記得釋放內存。
除此之外,cJSON庫還有很多其他的API,比如可以添加數組、嵌套對象等。如果你需要在C語言中操作JSON數據,建議選擇cJSON這個庫。
上一篇c++ json寫入數據
下一篇c#遍歷json字符串