CSJON库基本数据格式 cJSON 定义
构造JSON:
首先创建JSON主对象
cJSON* root=cJSON_CreateObject();类似的创建数组对象
cJSON* array=cJSON_CreateArray();向对象中增加(字符)节点
cJSON_AddStringToObject(root,"名称","字符串");向对象中增加对象(字符串、数组、数字)
cJSON_AddItemToObject(root,"名称",cJSON_CreateString("邝东宇")) ; cJSON_AddItemToObject(root,"名称",cJSON_CreateNumber(100)) ;
向数组中增加元素(元素类型不一定相同)
cJSON_AddItemToArray(array,cJSON_CreateString("Linux")); cJSON_AddItemToArray(array,cJSON_CreateNumber(26));解析JSON:
首先获取字符串形式的JSON数据,例:存储于char data[1024];
获取JSON对象
cJSON* root=cJSON_Parse(data); 获取指定名称的节点指针, cJSON* tmp=cJSON_GetObjectItem(root,"name"); 解析数组,首先按上步获取数组指针 如 cJSON* array 获取数组大小 int size=cJSON_GetArraySize(array);获取数组元素 cJSON* tmp=cJSON_GetArrayItem(array,1); //下标从0开始最后释放对象
cJSON_Delete(root);根据对象指针获取JSON字符串形式数据
char *data=cJSON_Print(root);
附件cJSON库以及demo源码在本人CSDN资源中获取。