CJSON中有关于在对象中放数组,数组中放对象,以及其解析

CJSON数据的打包————创立一个键值对:键为"status_element",值为数组,数组中有大量对象的Cjson:

数据结构为 {key1:value1, key2:value2, ...} 的键值对结构:(key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。)

 cJSON_AddItemToObject(Packet_Head,"status_element",status_element);//向environ中添加一个数组对象info_element
   for(i=0;i

 

解析一个键为“parameter_element”,键值为数组,数组中有大量对象的Cjson:

  parameter_element = cJSON_GetObjectItem(Packet_Head,"parameter_element"); 
         array_size = cJSON_GetArraySize(parameter_element);
         for(i=0; i< array_size; i++)
          {
            item=cJSON_GetArrayItem(parameter_element,i);
             
             device_id = cJSON_GetObjectItem(item,"device_id"); 
             _RX_DEV_Data.device_id[i]=device_id->valuestring;
             printf("(1) device_id[i]: %s\n",_RX_DEV_Data.device_id[i]); 
             
             position = cJSON_GetObjectItem(item,"position"); 
             _RX_DEV_Data.position[i]=position->valuestring;
             printf("(1) position[i]: %s\n",_RX_DEV_Data.position[i]); 
             
             status_num = cJSON_GetObjectItem(item,"status_num"); 
             _RX_DEV_Data.status_num[i]=status_num->valuestring;
             printf("(1) position[i]: %s\n",_RX_DEV_Data.status_num[i]); 
          }

 

你可能感兴趣的:(ARM_单片机)