c類型json是一種常用的數據格式,用于表示復雜的數據結構。c類型json是基于c語言的一種數據類型,其具有輕量級、易讀性好、易于擴展等優點。
在c類型json中,所有的數據都是由以下三種基本類型構成:
enum { CJSON_NULL, //空值 CJSON_FALSE, //假值 CJSON_TRUE, //真值 CJSON_NUMBER, //數字 CJSON_STRING, //字符串 CJSON_ARRAY, //數組 CJSON_OBJECT //對象 };
在c類型json中,數據類型的轉換比較簡單,只需要將json字符串轉換為相應的結構體即可。下面是一個將json字符串轉換為結構體的示例:
cJSON *root = cJSON_Parse(json_string); if (root != NULL) { //獲取數據 int result = cJSON_GetObjectItem(root, "result")->valueint; char *message = cJSON_GetObjectItem(root, "message")->valuestring; //釋放內存 cJSON_Delete(root); }
在c類型json中,數據的創建也比較簡單,只需要按照數據類型的要求創建相應的結構體即可。下面是一個創建一個json對象的示例:
cJSON *root = cJSON_CreateObject(); cJSON_AddStringToObject(root, "name", "json"); cJSON_AddNumberToObject(root, "age", 20); // json字符串格式化輸出 char *json_str = cJSON_Print(root); printf("json object: %s\n", json_str); // 釋放內存 cJSON_Delete(root); free(json_str);
上一篇c#json轉dic