YAML格式介绍

YAML格式介绍

YAML 专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格式方便

一:语法规则

1:大小写敏感。
2:使用缩进表示层级关系。
3:缩进时 不允许 使用Tab键,只允许使用空格。
4:缩进的空格数目不重要,只要相同层级的元素左侧对齐即可。

“#”表示注释,从这个字符一直到行尾,都会被解析器忽略

二:数据结构

YAML 支持三种数据结构:对象、数组和纯量

1:对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
2:数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
3:纯量(scalars):单个的、不可再分的值

###1:对象

简单对象

foo: whatever
bar: stuff

复杂对象

foo: whatever 
bar: 
 - 
   fruit: apple 
   name: steve 
   sport: baseball 
 - more 
 - 
   python: rocks 
   perl: papers 
   ruby: scissorses

转换为 javascript 代码后

{ foo: 'whatever',
  bar: 
   [ { fruit: 'apple', name: 'steve', sport: 'baseball' },
     'more',
     { python: 'rocks', perl: 'papers', ruby: 'scissorses' } ] }

2:数组

- Cat
- Dog
- Goldfish

3:纯量

纯量是最基本的、不可再分的值。
- 字符串
- 布尔值
- 整数
- 浮点数
- Null
- 时间
- 日期

字符串

str: 这是一行字符串

如果字符串之中包含空格或特殊字符,需要放在引号之中

str: '内容: 字符串'

多行字符串可以使用 | 保留换行符,也可以使用 > 折叠换行。

this: |
  Foo
  Bar
that: >
  Foo
  Bar

转换为 javascript 代码:

{ this: 'Foo\nBar\n', that: 'Foo Bar\n' }

空值

YAML有几种空值的表现方式,分别是 “null”、”~” 和 不填

	a: null
	b: ~
	c:

最后得出数据

{a: null, b: null, c: null} 

工具

1:YAML 和 Properties 格式互转工具

你可能感兴趣的:(配置文件)