在C語言中,我們可以使用第三方庫來處理JSON數據,比如cJSON。首先需要下載并安裝cJSON,可以從GitHub上找到最新的版本。
下面是使用cJSON庫來取JSON數據庫的示例代碼:
#include <stdio.h> #include <cJSON.h> int main() { char json[] = "{ \"name\": \"John\", \"age\": 30, \"city\": \"New York\" }"; cJSON* root = cJSON_Parse(json); if (root != NULL) { 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; }
以上代碼的輸出結果應該是:
Name: John Age: 30 City: New York
可以看出,我們首先將JSON字符串轉換為cJSON對象,然后使用cJSON_GetObjectItemCaseSensitive函數來獲取對象屬性的值。獲取到值后,我們可以使用valuestring或者valueint屬性來獲取屬性的具體值。
需要注意的是,cJSON_GetObjectItemCaseSensitive函數對大小寫敏感,如果屬性名不正確會返回NULL,因此需要保證屬性名的正確性。