JSON(JavaScript Object Notation,JavaScript 對象表示法)是一種輕量級的數據交換格式,采用易于理解的文本形式。在C語言中,可以通過使用cJSON庫來操作JSON數據結構。
#include <cJSON.h>
#include <stdio.h>
int main() {
char* json_string = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
cJSON* json = cJSON_Parse(json_string);
if (!json) {
printf("Error before: [%s]\n", cJSON_GetErrorPtr());
return 1;
}
cJSON* name = cJSON_GetObjectItemCaseSensitive(json, "name");
cJSON* age = cJSON_GetObjectItemCaseSensitive(json, "age");
cJSON* city = cJSON_GetObjectItemCaseSensitive(json, "city");
printf("%s is %d years old and lives in %s.\n",
name->valuestring, age->valueint, city->valuestring);
cJSON_Delete(json);
return 0;
}
如上所示,我們可以使用cJSON庫中的函數解析JSON格式的字符串并進行操作。首先,需要將一個JSON字符串轉換為cJSON結構體類型,該結構體包含了JSON數據中的各種屬性。然后,我們可以通過cJSON_GetObjectItemCaseSensitive函數獲取指定名稱的屬性,并使用它們來執行我們想要的操作。
cJSON中還支持創建、插入、刪除、修改等各種操作,使得JSON數據的處理變得更加靈活和方便。