在 C 語言中,提取 JSON 字符串需要通過字符串操作和解析 JSON 的方式實(shí)現(xiàn)。在實(shí)現(xiàn)時(shí),你需要用到 cJSON 這個(gè)庫來解析 JSON。
首先,你需要將 JSON 字符串解析為 cJSON 的結(jié)構(gòu)體。以下是一個(gè)簡單的 JSON 字符串:
{ "name": "小明", "age": 18, "gender": "男" }
接下來,可以使用以下代碼將 JSON 字符串轉(zhuǎn)換為 cJSON 的結(jié)構(gòu)體:
cJSON *root = cJSON_Parse(json_string);
在獲取 JSON 中的某一項(xiàng)值時(shí),你需要確定該值是一個(gè) JSON 對象、一個(gè) JSON 數(shù)組還是一個(gè) JSON 字符串。以下是針對上述 JSON 的三種情況:
1. 獲取 JSON 對象:
cJSON *name_object = cJSON_GetObjectItemCaseSensitive(root, "name"); char *name_value = cJSON_GetStringValue(name_object);
2. 獲取 JSON 數(shù)組:
cJSON *array_object = cJSON_GetObjectItemCaseSensitive(root, "array"); cJSON *array_element = NULL; cJSON_ArrayForEach(array_element, array_object) { char *array_value = cJSON_GetStringValue(array_element); }
3. 獲取 JSON 字符串:
cJSON *string_object = cJSON_GetObjectItemCaseSensitive(root, "gender"); char *string_value = cJSON_GetStringValue(string_object);
以上就是在 C 語言中提取 JSON 字符串的方法。如果你想深入了解 cJSON 的 API,可以查看 cJSON 的官方文檔。