C和JSON結(jié)合使用可以很好地處理數(shù)據(jù),其中判斷JSON對象的方法是必不可少的。
cJSON *jsonObject = cJSON_Parse(jsonStr); if(jsonObject == NULL){ // json格式錯誤 } if(cJSON_IsObject(jsonObject)){ // 這是一個json對象 } else { // 不是json對象 } cJSON_Delete(jsonObject);
在這段代碼中,我們首先使用cJSON_Parse函數(shù)將JSON字符串解析為JSON對象jsonObject。如果字符串格式錯誤,則cJSON_Parse函數(shù)將返回NULL。接下來,我們使用cJSON_IsObject函數(shù)來判斷該對象是否是JSON對象。如果是,該函數(shù)將返回true,否則返回false。
最后,我們使用cJSON_Delete函數(shù)刪除已經(jīng)解析出JSON對象jsonObject,釋放內(nèi)存。
cJSON *jsonObject = cJSON_CreateObject(); if(jsonObject == NULL){ // 創(chuàng)建json對象失敗 } cJSON_AddItemToObject(jsonObject, "name", cJSON_CreateString("張三")); if(cJSON_HasObjectItem(jsonObject, "name")){ // json對象中存在"name"屬性 } else { // json對象中不存在"name"屬性 } cJSON_Delete(jsonObject);
在這段代碼中,我們首先使用cJSON_CreateObject函數(shù)創(chuàng)建了一個JSON對象jsonObject。如果創(chuàng)建對象失敗,該函數(shù)將返回NULL。接下來,我們使用cJSON_AddItemToObject函數(shù)向?qū)ο笾刑砑訉傩?name",并將其值設(shè)置為字符串"張三"。最后,我們使用cJSON_HasObjectItem函數(shù)來判斷JSON對象中是否存在屬性"name"。如果該屬性存在,該函數(shù)將返回true,否則返回false。
以上就是使用C和JSON結(jié)合判斷JSON對象的方法。
上一篇vue $(this)
下一篇vue #號更換