Json&Yaml

Yaml

基本规则:
1、大小写敏感
2、使用缩进表示层级关系
3、禁止使用tab缩进,只能使用空格键
4、缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级。
5、使用#表示注释
6、字符串可以不用引号标注

三种数据结构
1、map,散列表
使用冒号(:)表示键值对,同一缩进的所有键值对属于一个map,示例:

# YAML表示
age : 12
name : huang

# 对应的Json表示
{'age':12,'name':'huang'}

2、list,数组
使用连字符(-)表示:

# YAML表示
- a
- b
- 12

# 对应Json表示
['a','b',12]

3、scalar,纯量

数据结构嵌套

1、map嵌套map

# YAML表示,冒号:后面必须加空格
websites:
 YAML: yaml.org 
 Ruby: ruby-lang.org 
 Python: python.org 
 Perl: use.perl.org 

# 对应Json表示
{ websites: 
   { YAML: 'yaml.org',
     Ruby: 'ruby-lang.org',
     Python: 'python.org',
     Perl: 'use.perl.org' } }

2、map嵌套list

# YAML表示
languages:
 - Ruby
 - Perl
 - Python 
 - c

# 对应Json表示
{ languages: [ 'Ruby', 'Perl', 'Python', 'c' ] }

3、list嵌套list

# YAML表示
-
  - Ruby
  - Perl
  - Python 
- 
  - c
  - c++
  - java

# 对应Json表示
[ [ 'Ruby', 'Perl', 'Python' ], [ 'c', 'c++', 'java' ] ]

4、list嵌套map

# YAML表示
-
  id: 1
  name: huang
-
  id: 2
  name: liao

# 对应Json表示
[ { id: 1, name: 'huang' }, { id: 2, name: 'liao' } ]

Json

Json对象(类比Yaml中的map)

{ "name":"runoob", "alexa":10000, "site":null }

需要注意:
JSON 对象使用在大括号({})中书写。
对象可以包含多个 key/value(键/值)对。
key 必须是字符串,value 可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。
key 和 value 中使用冒号(:)分割。
每个 key/value 对使用逗号(,)分割。

Json数组(类比Yaml中的list)

[ "Google", "Runoob", "Taobao" ]

JSON 数组在中括号中书写。
JSON 中数组值必须是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。

JSON 对象中的数组(类比Yaml中map嵌套list)

{
"name":"网站",
"num":3,
"sites":[ "Google", "Runoob", "Taobao" ]
}

猜你喜欢

转载自blog.csdn.net/weixin_38645718/article/details/85227948
今日推荐