C语言:JSON格式详解
C语言:cJSON库用法详解
C语言:使用cJSON库构造JSON
C语言:使用cJSON库解析JSON字符串
JSON 简介
JSON全称 JavaScript Object Notation,即 JS对象简谱,是一种轻量级的数据格式。
它采用完全独立于编程语言的文本格式来存储和表示数据,语法简洁、层次结构清晰,易于人阅读和编写,同时也易于机器解析和生成,有效的提升了网络传输效率。
JSON 语法
JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式。
JSON对象是一个无序的"key(关键字)/value(值)"键值对的集合:
- 以"{“开始,以”}"结束,允许嵌套使用
- 每个key(关键字)和value(值)成对出现,关键字和值之间使用":"分隔
- 键/值对之间用","分隔
- 在这些字符前后允许存在无意义的空白符
其中关键字只能是字符串(使用双引号“”表示),值可以有如下表示:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组 (在中括号中)
- 对象 (在大括号中)
- null
具体显示如下:
{
"name": "MQ", //字符串
"age": 25, //整数
"height": 183.5, //浮点数
"gender": false, //逻辑值
"address":{ "country": "China",
"zip-code": 123456
}, //对象
"subject": ["政治", "数学", "英语", "专业课"], //字符型数组
"time": [123, 456, 789, 150], //整型数组
"grade": [66.51, 118.52, 61.53, 128.54], //浮点型数组
"student":[
{"name":"张三","age":24,"gender":true},
{"name":"李四","age":25,"gender":true},
{"name":"王五","age":26,"gender":true}
] //对象型数组
}