参考文档[url=http://yaml.org/spec/1.2/spec.html]http://yaml.org/spec/1.2[/url]
[b]yaml使用缩进表达数据的结构层次[/b]
[b]yaml中的三种基本数据表示[/b]
[u]Scalars标量:[/u] 标量以行或其他分隔符来区分
[u]Mappings字典:[/u] 字典以 key:value 的形式来表示
也可在同一行上用{}来表式
[u]Sequence序列:[/u]
处于同一层次的以-开头的标量属于同一序列
也可在同一行上用[]来表式
[b]yaml中的注释[/b]
[b]yaml文档[/b]
yaml文档并非指通常意义上的磁盘上的一个个文件,yaml的一个文档表示该文档表述的数据与其他文档的数据有着独立的上下文
[b]yaml中的标识与引用[/b]
yaml中用&表示一个标识,用*引用一个被标识的标量
[b]更多形式的标量[/b]
以|开头的标量换行将会被保留
以>开头的标量换行将会被替换成空格,空白行才会被替换成换行
字典和序列作为key
[b]yaml使用缩进表达数据的结构层次[/b]
bill-to: 001
given : Chris
family : Dumars
address:
city : Royal Oak
state : MI
postal : 48046
[b]yaml中的三种基本数据表示[/b]
[u]Scalars标量:[/u] 标量以行或其他分隔符来区分
abc
85
2008-08-08
[u]Mappings字典:[/u] 字典以 key:value 的形式来表示
apple:
color: red
weight: 1.2
country: china
也可在同一行上用{}来表式
apple:{color: red, weight: 1.2, country: china}
[u]Sequence序列:[/u]
处于同一层次的以-开头的标量属于同一序列
fruit:
-apple
-banana
-pear
也可在同一行上用[]来表式
fruit:[apple,banana,pear]
[b]yaml中的注释[/b]
#注释内容
[b]yaml文档[/b]
yaml文档并非指通常意义上的磁盘上的一个个文件,yaml的一个文档表示该文档表述的数据与其他文档的数据有着独立的上下文
---
文档1
...
---
文档2
...
[b]yaml中的标识与引用[/b]
yaml中用&表示一个标识,用*引用一个被标识的标量
hr: &tag Sammy Sosa
rbi: *tag
[b]更多形式的标量[/b]
以|开头的标量换行将会被保留
---
p: |
line1
line2
line3
#{"p"=>"line1\nline2\nline3\n"}
以>开头的标量换行将会被替换成空格,空白行才会被替换成换行
---
p: >
word1
word2
newline
word3
word4
#{"p"=>"word1 word2\nnewline word3 word4\n"}
字典和序列作为key
? {name: Liming, score: 60}
: C
? - apple
- banana
: fruit
#{["apple", "banana"]=>"fruit", {"name"=>"Liming", "score"=>60}=>"C"}