cJSON是一個用于分析和生成JSON數據的C語言庫。它可以將C字符串轉換為JSON對象,同時也可以將JSON對象轉換為C字符串。
cJSON *cJSON_Parse(const char *value);
這個函數將一個JSON字符串解析為一個cJSON對象并返回。如果JSON字符串不合法,將返回NULL。
cJSON *cJSON_CreateObject(void); cJSON *cJSON_CreateArray(void); void cJSON_AddItemToObject(cJSON *object, const char *string, cJSON *item); void cJSON_AddItemToArray(cJSON *array, cJSON *item); void cJSON_AddStringToObject(cJSON *object, const char *string, const char *value); void cJSON_AddNumberToObject(cJSON *object, const char *string, double value); void cJSON_AddBoolToObject(cJSON *object, const char *string, int value); void cJSON_AddNullToObject(cJSON *object, const char *string); void cJSON_Delete(cJSON *c); char *cJSON_Print(const cJSON *item);
這一組函數用于創建和修改cJSON對象。它們可以創建空的對象、數組,向對象中添加元素等。可以向對象中添加字符串、數字、布爾值或null。cJSON_Delete函數用于刪除一個cJSON對象,cJSON_Print函數用于將一個cJSON對象轉換為一個C字符串。
cJSON *root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "name", "張三"); cJSON_AddNumberToObject(root, "age", 25); cJSON *hobbies = cJSON_CreateArray(); cJSON_AddItemToArray(hobbies, cJSON_CreateString("籃球")); cJSON_AddItemToArray(hobbies, cJSON_CreateString("音樂")); cJSON_AddItemToObject(root, "hobbies", hobbies); char *jsonStr = cJSON_Print(root); printf("%s\n", jsonStr); cJSON_Delete(root); free(jsonStr);
這段代碼創建了一個cJSON對象,向其中添加了一個字符串、一個數值和一個數組。最后將這個對象轉換為一個JSON字符串并輸出。需要注意的是,使用完cJSON對象后,需要調用cJSON_Delete函數刪除它以釋放內存。
上一篇c#拼接json字符串
下一篇c打開本地json文件