cJSON使用笔记
cJSON
Ultralightweight JSON parser in ANSI C
项目地址:https://gitcode.com/gh_mirrors/cj/cJSON
·
-
cJSON下载
链接:https://pan.baidu.com/s/1CJShZevYLWDs4Q61P8PROA
提取码:nzr8
-
创建简单的JSON数据
{
“hello":"world"
}
cJSON *root;
char *out;
root=cJSON_CreateObject();
if(root != NULL)
{
cJSON_AddStringToObject(root,"hello","world");
out=cJSON_Print(root);
printf("%s\n",out);
cJSON_Delete(root);
if(out != NULL)
free(out);
}
-
创建JSON数组
{
"Data:[1,2,3,4,5,6,7,8,9,10]
}
cJSON *root;
cJSON *obj;
char *out;
int array[] = {1,2,3,4,5,6,7,8,9,10};
root = cJSON_CreateObject();
if(root != NULL)
{
obj = cJSON_CreateIntArray(array,10);
cJSON_AddItemToObject(root,"Data",obj);
out=cJSON_Print(root);
printf("%s\n",out);
cJSON_Delete(root);
if(out != NULL)
free(out);
}
-
创建JSON字符串数组
{
Data:["Mon","Tue","Wed","Thu","Fri","Sta","Sun"]
}
cJSON *root;
cJSON *obj;
char *out;
char *array[] = {"Mon","Tue","Wed","Thu","Fri","Sta","Sun"};
root = cJSON_CreateObject();
if(root != NULL)
{
obj = cJSON_CreateStringArray(array,7);
cJSON_AddItemToObject(root,"Data",obj);
out=cJSON_Print(root);
printf("%s\n",out);
cJSON_Delete(root);
if(out != NULL)
free(out);
}
-
解析简单的JSON数据
{
“hello":"world"
}
char msg[] = "{\"hello\":\"world\"}";
cJSON *json;
cJSON *item;
json=cJSON_Parse(msg); //获取整个大的句柄
item = cJSON_GetObjectItem(json,"hello"); //获取这个对象成员
printf("hello:%s\n",item->valuestring);
if(json != NULL)
cJSON_Delete(json);
-
解析JSON数组
{
"Data:[1,2,3,4,5,6,7,8,9,10]
}
char msg[] = "{\"Data\":[1,2,3,4,5,6,7,8,9,10]}";
cJSON *json;
cJSON *array;
cJSON *item;
int length;
int i;
json=cJSON_Parse(msg); //获取整个大的句柄
array = cJSON_GetObjectItem(json,"Data");
// item = cJSON_GetArrayItem(json,"Data"); //获取这个对象成员
length = cJSON_GetArraySize(array);
printf("length %d\n",length);
for(i=0; i<length;i++)
{
item = cJSON_GetArrayItem(array,i);
printf("Data[%d]:%d\n",i,item->valueint);
}
if(json != NULL)
cJSON_Delete(json);
-
解析JSON字符串数组
{
Data:["Mon","Tue","Wed","Thu","Fri","Sta","Sun"]
}
char msg[] = "{\"Data\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sta\",\"Sun\"]}";
cJSON *json;
cJSON *array;
cJSON *item;
int length;
int i;
json=cJSON_Parse(msg); //获取整个大的句柄
array = cJSON_GetObjectItem(json,"Data");
// item = cJSON_GetArrayItem(json,"Data"); //获取这个对象成员
length = cJSON_GetArraySize(array);
printf("length %d\n",length);
for(i=0; i<length;i++)
{
item = cJSON_GetArrayItem(array,i);
printf("Data[%d]:%s\n",i,item->valuestring);
}
if(json != NULL)
cJSON_Delete(json);
Ultralightweight JSON parser in ANSI C
最近提交(Master分支:4 个月前 )
c859b25d
4 个月前
74e1ff49
this fixes CVE-2025-57052 4 个月前
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)