JSON(JavaScript Object Notation)是一種輕量級(jí)的數(shù)據(jù)交換格式,其語(yǔ)法和JS對(duì)象一樣。在C語(yǔ)言中,我們可以使用第三方庫(kù)來(lái)解析JSON數(shù)據(jù)。
常用的JSON解析庫(kù)有cJSON和jansson。其中,cJSON是一個(gè)非常輕量級(jí)的庫(kù),它只有一個(gè).c和.h文件,可以方便地集成到我們的C項(xiàng)目中。
#include <cJSON.h> #include <stdio.h> int main() { char* json_string = "{\"name\":\"John Doe\",\"age\":30,\"city\":\"New York\"}"; cJSON* root = cJSON_Parse(json_string); if (root) { cJSON* name = cJSON_GetObjectItemCaseSensitive(root, "name"); cJSON* age = cJSON_GetObjectItemCaseSensitive(root, "age"); cJSON* city = cJSON_GetObjectItemCaseSensitive(root, "city"); printf("Name: %s\n", name->valuestring); printf("Age: %d\n", age->valueint); printf("City: %s\n", city->valuestring); cJSON_Delete(root); } return 0; }
上述示例代碼中,我們首先定義了一個(gè)JSON字符串,然后使用
接著,我們使用
最后,我們使用
總的來(lái)說(shuō),通過(guò)使用cJSON庫(kù),我們可以輕松地解析JSON數(shù)據(jù)格式,從而方便地在C項(xiàng)目中進(jìn)行數(shù)據(jù)交換。