CJSON是一個用于C語言的高效、輕量級的JSON解析器和生成器庫。CJSON實現了從JSON字符串到CJSON對象的轉換,以及從CJSON對象到JSON字符串的轉換。
// 從JSON字符串創建CJSON對象 char *json_str = "{\"name\":\"John\", \"age\":30, \"married\":false}"; cJSON *json_obj = cJSON_Parse(json_str); if (json_obj == NULL) { printf("Error parsing JSON.\n"); return -1; } // 從CJSON對象獲取JSON字符串 char *new_json_str = cJSON_Print(json_obj); printf("%s\n", new_json_str); // 從CJSON對象獲取指定屬性的值 cJSON *name_obj = cJSON_GetObjectItem(json_obj, "name"); printf("Name: %s\n", name_obj->valuestring); // 修改CJSON對象的屬性值 cJSON_ReplaceItemInObject(json_obj, "age", cJSON_CreateNumber(40)); char *updated_json_str = cJSON_Print(json_obj); printf("%s\n", updated_json_str); // 釋放內存 cJSON_Delete(json_obj); free(new_json_str); free(updated_json_str);
通過以上代碼的演示,我們可以看到CJSON的使用非常簡單。我們只需要調用相關的函數,就可以完成CJSON對象和JSON字符串之間的轉換。同時,我們還可以通過CJSON對象的指針獲取指定屬性的值,并且可以修改CJSON對象中的屬性值。最后,不要忘記釋放CJSON對象和相關的內存。