C Dynamic JSON是一個用C語言編寫的輕量級JSON解析器和構建器,可用于在C應用程序中處理JSON。它支持基本JSON數據類型,包括數組和對象,以及從JSON字符串解析數據和將數據序列化為JSON字符串。
使用C Dynamic JSON可以讓開發(fā)人員輕松更改JSON數據,而不需要手動解析和構建JSON字符串。它還支持嵌套JSON對象,因此可以創(chuàng)建復雜的JSON數據結構。
//下面是一個示例代碼,演示了如何使用C Dynamic JSON進行JSON解析和構建: #include "cJSON.h" #include <stdio.h> int main() { const char* json = "{\"name\":\"John\",\"age\":30,\"cars\":[\"Ford\",\"BMW\",\"Fiat\"]}"; cJSON* root = cJSON_Parse(json); if (!root) { printf("JSON解析失敗!\n"); return 1; } cJSON* name = cJSON_GetObjectItemCaseSensitive(root, "name"); printf("name:%s\n", name->valuestring); cJSON* age = cJSON_GetObjectItemCaseSensitive(root, "age"); printf("age:%d\n", age->valueint); cJSON* cars = cJSON_GetObjectItemCaseSensitive(root, "cars"); cJSON* car = NULL; cJSON_ArrayForEach(car, cars) { printf("%s\n", car->valuestring); } cJSON_Delete(root); cJSON* new_car = cJSON_CreateString("Audi"); cJSON_AddItemToArray(cars, new_car); cJSON* new_person = cJSON_CreateObject(); cJSON_AddStringToObject(new_person, "name", "Tom"); cJSON_AddNumberToObject(new_person, "age", 25); cJSON* new_json = cJSON_CreateObject(); cJSON_AddItemToObject(new_json, "car", cars); cJSON_AddItemToObject(new_json, "person", new_person); char* serialized_json = cJSON_Print(new_json); printf("%s\n", serialized_json); cJSON_Delete(new_json); free(serialized_json); return 0; }
在上面的示例代碼中,我們首先使用cJSON_Parse函數將JSON字符串解析為CJSON對象,并對其進行訪問。然后,我們將一個新的汽車添加到json字符串中的汽車數組中,并創(chuàng)建一個新的JSON對象以包含汽車和一個名為Tom的人物。最后,我們將新的JSON對象序列化為JSON字符串。
C Dynamic JSON是一個輕巧而強大的JSON解析器和構建器,它可以輕松地在C應用程序中使用。因為它是用C語言編寫的,所以它運行速度非常快,并且可以在各種平臺上使用。
上一篇python 重復命令