cJSON很好使用的一个json解析器

前端之家收集整理的这篇文章主要介绍了cJSON很好使用的一个json解析器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

cJSON很好使用的一个json解析器

1429人阅读 评论(0) 收藏 举报

cJSON: 一个用c写的一个简单好用的JSON解析器

下载地址:http://sourceforge.net/projects/cjson/files/?source=navbar

实例1: 创建一个简单的学生信息数组

cJSON* pRoot = cJSON_CreateObject();
cJSON* pArray = cJSON_CreateArray();
cJSON_AddItemToObject(pRoot,"students_info",pArray);
char* szOut = cJSON_Print(pRoot);

cJSON* pItem = cJSON_CreateObject();
cJSON_AddStringToObject(pItem,"name","chenzhongjing");
cJSON_AddStringToObject(pItem,"sex","male");
cJSON_AddNumberToObject(pItem,"age",28);
cJSON_AddItemToArray(pArray,pItem);

pItem = cJSON_CreateObject();
cJSON_AddStringToObject(pItem,"fengxuan");
cJSON_AddStringToObject(pItem,24);
cJSON_AddItemToArray(pArray,"tuhui");
cJSON_AddStringToObject(pItem,22);
cJSON_AddItemToArray(pArray,pItem);

char* szJSON = cJSON_Print(pRoot);
cJSON_Delete(pRoot);
//free(szJSON);

pRoot = cJSON_Parse(szJSON);
pArray = cJSON_GetObjectItem(pRoot,"students_info");
if (NULL == pArray)
{
return -1;
}

int iCount = cJSON_GetArraySize(pArray);
for (int i = 0; i < iCount; ++i)
{
cJSON* pItem = cJSON_GetArrayItem(pArray,i);
if (NULL == pItem)
{
continue;
}

string strName = cJSON_GetObjectItem(pItem,"name")->valuestring;
string strSex = cJSON_GetObjectItem(pItem,"sex")->valuestring;
int iAge = cJSON_GetObjectItem(pItem,"age")->valueint;
}

cJSON_Delete(pRoot); free(szJSON);

原文链接:https://www.f2er.com/json/290148.html

猜你在找的Json相关文章