C 語言提供了許多 JSON 解析庫,常用的有 cJSON、jansson 等。其中 cJSON 是一款非常輕量級的庫,使用簡單,性能優秀。而在使用 cJSON 進行 JSON 解析的過程中,常常需要將 JSON 轉換成 C 語言中的字符串數組對象。
下面通過一段示例代碼來介紹 cJSON 如何將 JSON 轉換成字符串數組對象:
#include <stdio.h> #include <cJSON.h> int main() { char *json_str = "{ \"name\": \"Tom\", \"age\": 18 }"; cJSON *root = cJSON_Parse(json_str); cJSON *name = cJSON_GetObjectItem(root, "name"); cJSON *age = cJSON_GetObjectItem(root, "age"); char *name_str = cJSON_Print(name); // 將 name 轉換成字符串 char *age_str = cJSON_Print(age); // 將 age 轉換成字符串 char *str_arr[] = { name_str, age_str }; // 將字符串存入數組 int arr_len = sizeof(str_arr) / sizeof(str_arr[0]); // 計算數組長度 for (int i = 0; i< arr_len; i++) { printf("%s\n", str_arr[i]); } cJSON_Delete(root); return 0; }
這段代碼的功能是將 JSON 數據 { "name": "Tom", "age": 18 } 轉換成字符串數組對象,并輸出數組中的元素。首先使用 cJSON_Parse 函數將 JSON 字符串轉換成 cJSON 對象,之后使用 cJSON_GetObjectItem 函數獲取對象中的 name、age 字段,并且使用 cJSON_Print 函數將其轉換成字符串。
接著將轉換后的字符串存入 str_arr 數組中,并利用計算數組長度的方法計算數組長度。最后使用 for 循環遍歷輸出數組中的元素。
以上就是 cJSON 如何將 JSON 轉換成字符串數組對象的方法,希望對使用 cJSON 的開發者們有所幫助。