一、JSON简介
JSON (JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。
1.1 JSON 语法规则
在 JS 语言中,一切都是对象。 因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型:
● 对象表示为键值对
● 数据由逗号分隔
● 花括号保存对象
● 方括号保存数组
1.2 JSON 键/值对
JSON 键值对是用来保存 JS 对象的一种方式,键/值对组合中的键名写在前面并用双引号 "" 包裹,使用冒号 : 分隔,然后紧接着值:
{"firstName": "Json"}
二、添加cJSON
链接:https://pan.baidu.com/s/1t4hn6CHpqK94OJpk4b0Bjw 提取码:zyjb
将 cJSON.h 添加到工程的 include/ 目录下
将 cJSON.c 添加到工程的 user/ 目录下
三、生成JSON数据
流程:创建JSON结构体 --> 添加数据 --> 释放内存
3.1 创建JSON结构体
cJSON *pRoot = cJSON_CreateObject(); // 创建JSON根部结构体
cJSON *pValue = cJSON_CreateObject(); // 创建JSON子叶结构体
3.2 添加字符串类型数据
cJSON_AddStringToObject(pRoot,"mac","65:c6:3a:b2:33:c8"); // 添加字符串类型数据到根部结构体
cJSON_AddItemToObject(pRoot, "value",pValue);
cJSON_AddStringToObject(pValue,"day","Sunday"); // 添加字符串类型数据到子叶结构体
3.3 添加整型数据
cJSON_AddNumberToObject(pRoot,"number