cJSON使用笔记
笔记 使用
2023-09-14 09:06:41 时间
-
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);
相关文章
- Spring的学习笔记(十五)——SSM 解决接口跨域问题
- Spring连接池与事务管理 | Spring学习笔记
- 关于pytorch的一些笔记
- 离散数学第十一章群与编码笔记
- 关于 Kubernetes中Service的一些笔记
- 【RT-Thread学习笔记】如何优雅地退出QEMU模拟器?(RT-Thread技术论坛优秀文章)
- 笔记 | 一道使用js合并数组的题目
- docker使用笔记V -- FTP 与 SSH 支持
- docker使用笔记VI -- PHP
- 生信技能树笔记day4
- 关于Linux挂载 /etc/fstab 和 systemd.mount 使用场景的一些笔记
- 关于Linux中使用USE(使用率/饱和度/错误)方法分析系统性能的一些笔记
- Cypress学习笔记3——编写第一个测试脚本
- SortableJS / vue.draggable.next 使用笔记,持续记录
- Linux笔记12
- python学习笔记—交叉表的使用
- Java基础学习笔记二十二 网络编程详解编程语言
- 使用Redis培训机构学习心得(培训机构redis笔记)
- SQL学习笔记八索引,表连接,子查询,ROW_NUMBER
- Oracle学习笔记(四)
- DB2新手使用的一些小笔记:新建实例、数据库路径不存在、客户端连接.
- wxpython学习笔记(推荐查看)