cjson学习篇一:json认识
说明:
本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。
QQ 群 号:513683159 【相互学习】
内容来源:
cJSON库 API解析(上)
json几个小例子
JSON 教程
json 官网
一、JSON与cJSON介绍
JSON:
JSON 全称 JavaScript Object Notation,即 JS对象简谱,读作/ˈdʒeɪsən/,是一种轻量级的文本数据交换格式(移动数据、存储东西,或只是一般地表示程序的状态)。
JSON 是存储和交换文本信息的语法,类似 XML,但比 XML 更小、更快,更易解析。文件扩展名是 .json
.
采用完全独立于编程语言的文本格式来存储和表示数据,语法简洁、层次结构清晰,易于人阅读和编写,同时也易于机器解析和生成,有效的提升了网络传输效率。
cJSON:
cJSON是一个使用C语言编写的JSON数据解析器,具有超轻便,可移植,单文件的特点,使用MIT开源协议。
二、JSON语法
1.基本数据类型:
①对象(object):若干无序的 “键值对” (key-value pairs),其中键是数值或字符串,用 { }
括起来。
②数组 / 值的有序列表(array):有序的零个或者多个值,使用方括号[ ]
括起来。
③字符串(string):以双引号 " "
括起来的零个或多个 Unicode码位。支持反斜杠开始的转义字符序列。
④数值(number):不区分整数与浮点数。JavaScript用双精度浮点数 double表示所有数值。
⑤布尔值(boolean):表示为 true 或者 false 。
⑥null 类型:值写为 null
备注:
①对象:
以 “{
” 开始,以 “}
” 结束,允许嵌套使用;
可包含多个键值对,每个名称和值成对出现,名称和值之间使用 “:
” 分隔;即:key : value
相当于key = value
。键值对之间用 “,
” 分隔。
在这些字符前后允许存在无意义的空白符;
②数组:
以 “[
” 开始,以 “]
” 结束,允许嵌套使用;
每个值可以为任意类型,可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array);
元素之间用 “,
” 分隔
在这些元素前后允许存在无意义的空白符;
2.两种结构
名值对的集合(A collection of name/value pairs)。
不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),键列表(keyed list),关联数组 (associative array)。
值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)
三、举例
示例一:
{
"name":"王小二", //字符串
"age":18, //数值
"favorite_food":["dumplings","ribs"], //数组
"has_girlfriend":false, //布尔值
"car":null, //null
"address": //对象
{
"country":"China",
"city":"fuzhou",
"postcode":350000
}
}
示例二:
{
"employees": [
{"firstName":"Bill" , "lastName":"Gates" },
{"firstName":"George" , "lastName":"Bush" },
{"firstName":"Thomas" , "lastName":"Carter"}
]
}
更多推荐
所有评论(0)