在C語言中,我們經常需要處理JSON格式的數據,而JSON格式是一種方便快捷的數據交換方式,它使用字符串來表示數據。
在處理JSON數據時,需要將字符串解析為JSON格式的數據結構,或將JSON格式的數據結構轉換為字符串。下面介紹如何使用C語言中的字符串與JSON數據之間的轉換。
// 安裝cJSON庫 #include "cJSON.h" int main() { char *jsonStr = "{ \"name\": \"Tom\", \"age\": 18 }"; // 定義一個JSON字符串 cJSON *root = cJSON_Parse(jsonStr); // 解析JSON字符串為cJSON對象 // 獲取JSON對象中的值 char *name = cJSON_GetObjectItem(root, "name")->valuestring; int age = cJSON_GetObjectItem(root, "age")->valueint; printf("name: %s, age: %d\n", name, age); // 創建cJSON對象并設置值 cJSON *root2 = cJSON_CreateObject(); cJSON_AddItemToObject(root2, "name", cJSON_CreateString("Jerry")); cJSON_AddItemToObject(root2, "age", cJSON_CreateNumber(20)); char *jsonStr2 = cJSON_PrintUnformatted(root2); // 將cJSON對象轉換成JSON字符串 printf("jsonStr2: %s\n", jsonStr2); cJSON_Delete(root); // 釋放cJSON對象內存 cJSON_Delete(root2); return 0; }
CJSON是一個輕量級的C語言JSON解析庫,可以很方便地解析JSON字符串為cJSON對象,并且可以將cJSON對象轉換為JSON字符串。通過使用cJSON庫,我們可以輕松地在C語言中處理JSON格式的數據。