C語言中如何將JSON字符串轉換為JSON對象數組呢?一般來說,使用CJSON庫可以輕松地實現該功能。
//引入CJSON庫頭文件 #include "cjson/cJSON.h" int main(){ //創建JSON字符數組 char *jsonStr = "{\"name\":\"Sam\",\"age\":25,\"hobbies\":[\"reading\",\"swimming\"]}"; //解析JSON字符串為JSON對象 cJSON *root = cJSON_Parse(jsonStr); //獲取JSON對象數組中的值 char *name = cJSON_GetObjectItem(root, "name")->valuestring; int age = cJSON_GetObjectItem(root, "age")->valueint; cJSON *hobbies = cJSON_GetObjectItem(root, "hobbies"); int hobbiesSize = cJSON_GetArraySize(hobbies); for(int i = 0; i< hobbiesSize; i++){ char *hobby = cJSON_GetArrayItem(hobbies, i)->valuestring; } //釋放JSON對象內存 cJSON_Delete(root); return 0; }
上述代碼中,首先我們引入了CJSON庫頭文件,然后創建一個JSON字符數組,包含一個人的姓名、年齡和興趣愛好等信息。接著,我們使用cJSON_Parse()方法將該JSON字符數組解析為一個JSON對象,然后使用cJSON_GetObjectItem()方法獲取JSON對象中的值。
如果我們需要獲取JSON對象中的數組值,可以使用cJSON_GetArrayItem()方法。在獲取完JSON對象中的值后,我們需要使用cJSON_Delete()方法釋放JSON對象的內存。
總的來說,使用CJSON庫可以非常方便地將JSON字符串解析為JSON對象數組,實現數據的快速處理和使用。