JSON是一種輕量級的數(shù)據(jù)交換格式,廣泛應(yīng)用于不同編程語言的數(shù)據(jù)傳輸和存儲。在C語言中,我們可以使用第三方庫或手動解析json格式數(shù)據(jù)。下面我們將介紹使用第三方庫和手動解析json數(shù)據(jù)的方法。
使用第三方庫:
1、引入頭文件 #include "cJSON.h" 2、創(chuàng)建json對象 cJSON *root = NULL; root = cJSON_CreateObject(); 3、添加數(shù)據(jù) cJSON_AddStringToObject(root, "name", "Tom"); cJSON_AddNumberToObject(root, "age", 25); cJSON_AddBoolToObject(root, "isMarried", false); 4、轉(zhuǎn)為json數(shù)據(jù)字符串 char *jsonStr = cJSON_Print(root); 5、釋放內(nèi)存 cJSON_Delete(root);
手動解析json數(shù)據(jù):
1、定義json數(shù)據(jù) char *jsonStr = "{\"name\":\"Tom\",\"age\":25,\"isMarried\":false}"; 2、解析json數(shù)據(jù) cJSON *root = NULL; root = cJSON_Parse(jsonStr); 3、獲取數(shù)據(jù) char *name = cJSON_GetObjectItem(root, "name")->valuestring; int age = cJSON_GetObjectItem(root, "age")->valueint; bool isMarried = cJSON_GetObjectItem(root, "isMarried")->valueint; 4、釋放內(nèi)存 cJSON_Delete(root);
使用第三方庫可以更方便地創(chuàng)建和操作json數(shù)據(jù),但需要引入第三方庫頭文件和庫文件,增加代碼的冗余。手動解析json數(shù)據(jù)需要更多的代碼,但沒有額外的依賴。