在使用 C 語言處理 JSON 格式文件時(shí),我們需要先將 JSON 文件讀入內(nèi)存,然后使用相應(yīng)的庫對其進(jìn)行處理。
一個(gè)常用的 JSON 解析庫是json-c
。
在使用json-c
庫時(shí),我們需要做以下幾步:
#include <json-c/json.h>
int main() {
char *json_string = "{\"name\": \"Alice\", \"age\": 20}";
struct json_object *parsed_json = json_tokener_parse(json_string);
struct json_object *name;
json_object_object_get_ex(parsed_json, "name", &name);
const char *name_string = json_object_get_string(name);
printf("Name: %s\n", name_string);
json_object_put(parsed_json);
return 0;
}
上述代碼中,我們首先使用json_tokener_parse
函數(shù)將 JSON 格式的字符串轉(zhuǎn)換為json_object
對象。
然后,我們使用json_object_object_get_ex
函數(shù)從json_object
對象中獲取指定鍵名的值。
最后,我們使用json_object_get_string
函數(shù)將獲取到的 JSON 值轉(zhuǎn)換為字符串。
需要注意的是,在使用完json_object
對象后,一定要使用json_object_put
函數(shù)釋放內(nèi)存。