signed

QiShunwang

“诚信为本、客户至上”

【Unity学习笔记】Json语法规则

2021/6/3 14:55:01   来源:

声明:此篇文章是个人学习笔记,并非教程,所以内容可能不够严谨。可作参考,但不保证绝对正确。如果你发现我的文章有什么错误,非常欢迎指正,谢谢哦

Json

官网:https://www.json.org/json-zh.html

教程:https://www.w3school.com.cn/json/index.asp

什么是Json

一种简单的描述数据的文本格式。

Json能用来干嘛

我们可以通过Json来表示面向对象编程中的对象、数组以及基本数据类型(整型、浮点型···)。通过调用面向对象编程语言(如C#)中的一些方法,可以将Json文件中的文本转化为一个具体的对象,或者将一个对象转化为Json文件中的文本。

用Json的好处

1.格式简单。轻量,体积小,便于传输。
2.大部分语言、平台提供Json文件解析方法。解析方便,复用率高。

语法规则

在Json文本中我们能够表示两种结构:①对象(这里更像是结构体变量) ②数组。这两种结构在不同语言上称呼可能不同,但在本质是一样的:①键值对的集合 ②值的有序列表。

1.基本数据类型

在Json中使用键值对的方式来表示基本数据类型: “变量名” : 变量值 。键值对之间用逗号隔开。如:

“name”:“Jack” 表示 一个名字为name,值为Jack的字符串。

“name”:“Jack” , “age”:24 表示两个变量,其中第二个变量是值为24的整型变量。

可见,键值对的具体数据类型隐藏在了值上。

值的类型可以为:

  1. 数字(整数或浮点数)
  2. 字符串(在双引号中,可以使用转义字符)
  3. 逻辑值(true 或 false)
  4. 数组(在方括号中)
  5. 对象(在花括号中)
  6. null

2.对象

在Json中,对象用花括号{}表示,对象是键值对的集合,键值对之间用逗号隔开。如:

{“name”:“Jack” , “age”:24} 即表示含有两个属性的对象

3.数组

在Json中,数组用方括号[]表示,数组是值(不是键值对)的集合,值之间用逗号隔开。与C语言中的数组定义不同,这里一个数组可以包含不同类型的值,如:

[
    12,
    34,
    56,
    "abc"
]

4.嵌套使用上述类型

[
    {"name":"J","age":24},
    {"name":"a" , "age":23},
    {"name":"c" , "age":25}
]

上述文本表示含有三个对象的数组。

{
  "member":[
    {"name":"J","age":24},
    {"name":"a" , "age":23},
    {"name":"c" , "age":25}
  ]
}

上述文本表示含有一个数组的对象,其中那个数组又含有三个对象,且数组名为member。

注意:

前面提到,Json能够表示对象和数组这两种结构。实际上,Json也必须表示为这两种结构之一。也就是说,Json的最外层必须是一个对象或者数组。即json文件中所有文本必须是以 { 开头 以} 结尾,或者以 [ 开头以 ] 结尾。