C語言是一種非常實用的編程語言,它不僅僅可以實現各種各樣的功能,還可以讀取各種格式的數據。其中,讀取 JSON 數據是一項非常常見的任務,本文將介紹如何使用 C 語言讀取單個 JSON 數據。
#include#include #include "cJSON.h" char* readJson(char* data, char* key) { cJSON *root = cJSON_Parse(data); if (!root) { printf("Error before: [%s]\n", cJSON_GetErrorPtr()); return NULL; } cJSON* obj = cJSON_GetObjectItem(root, key); if (!obj) { printf("Cannot find %s in JSON data.", key); cJSON_Delete(root); return NULL; } char* result = cJSON_Print(obj); cJSON_Delete(root); return result; } int main() { char* data = "{\"name\": \"Alice\", \"age\": 20, \"location\": \"Beijing\"}"; char* name = readJson(data, "name"); if (name) { printf("Name: %s", name); free(name); } return 0; }
以上是一個簡單的示例,該示例包含了一個名為 readJson 的函數,該函數接收兩個參數:一個是包含 JSON 數據的字符串,另一個是鍵名。函數會將 JSON 字符串解析成 cJSON 對象,然后根據鍵名獲取值,并將值轉換為字符串返回。
在 Main 函數中,獲取了一個 JSON 數據字符串,并調用 readJson 函數獲取鍵名為 name 的值,并輸出到控制臺。如果返回的字符串不為 null,則輸出字符串。
在使用 C 語言讀取 JSON 數據時,需要借助第三方庫 cJSON,該庫提供了很多實用的函數,可以方便地解析和讀取 JSON 數據。