cJson的用法

创建json数据格式

cJSON_CreateObject  //创建一个节点

cJSON_CreateArray   //创建一个数组

 

cJSON_AddStringToObject //将一个字符串加入一个节点

cJSON_AddNumberToObject //将一个整数加入一个节点

 

cJSON_AddItemToArray    //将另一个节点加入数组

void cJSON_AddItemToObject(cJSON *object, const char *string,cJSON *item);

cJSON *object     :被加入的cJSON对象

const char *string:将要加入object的键

cJSON *item       :将要加入object的值

char *s = cJSON_PrintUnformatted(root);

char *p = cJSON_Print(root);

//将json对象转换成字符串,cJSON 里面有两个函数可以实现该功能,cJSON_Print 能够将json对象转换成更适合人眼的格式

------------------------------------------------------------------

解析json数据格式

1) 首先解析char*格式

cJSON* root = cJSON_Parse(char* jsonStr);

2) 获取键对应的内容

//获取对象

cJSON* programmersNode = cJSON_GetObjectItem(root, "programmers");

//获取数组 可先计算数组大小,再获取某一个数组,返回第0个数组的所有元素

int iSize = cJSON_GetArraySize(programmersNode);

cJSON* firstMan = cJSON_GetArrayItem(programmersNode, 0);

//取出数组中每个元素

programmers[i] = cJSON_GetArrayItem(programmersNode, i);

cJSON* firstName = cJSON_GetObjectItem(programmers[i], "firstName");

cJSON* lastName = cJSON_GetObjectItem(programmers[i], "lastName");

cJSON* id = cJSON_GetObjectItem(programmers[i], "id");

原文地址:https://www.cnblogs.com/xhslovecx/p/10298127.html