YAML文件介绍

YAML是一种可读性高,以数据为中心的数据序列化格式。可以表达对象(键值对)、数组、标量,能够被多种贬称该语言和脚本语言解析。

基本语法

  • 以 k:v 的形式表示键值对的关系,冒号后面必须有一个空格;
  • # 表示注释;
  • 对大小写敏感;
  • 通过缩进来表示层级关系,缩排中空格的数目不重要,只要相同阶层的元素左侧对齐就可以;
  • 缩进只能使用空格,不能使用tab缩进键;
  • 字符串可以不用双引号;

格式

1. 键值对

键值通过 冒号:,形如 k: v的方式表示,冒号后面要加一个空格,比如:

Name: Astrom
Sex: femal
School: TJU

如果是一个对象的多个属性,有两种表示方式:

// 第一种表示方式
People:
        Name: Astron
        Sex: femal
        School: TJU

// 第二种表示方式
People: {Name: Astron, Sex: femal}

2. 数组

数组中的元素采用 - 表示,以 - 开头的行表示构成一个数组;如下:

- A
- B
- C

如果有多个数据,有两种表示方法

// 第一种表示方法
People:
    - yyy
    - zzz
    - www

// 第二种表示方法
People: [yyy, zzz, www]

对象数组的表示也有两种方式,如下:

// 第一种表示方式
People:
  -
    name: yyy
    age: 18
  -
    name: zzz
    age: 19

// 第二种表示方式,流式表示
People: [{name: yyy, age: 18},{name: zzz, age: 19}]

3. 标量

标量是最基本的不可再分的值,包括:

  • 整数
  • 浮点数
  • 字符串
  • 布尔值
  • Null
  • 时间
  • 日期

表示如下:

boolean:
  - true  # 大小写都可以
  - false
float:
  - 3.14
  - 3.25e+5
int: 12
null:
  nodeName: name
string: 123
date: 2020-01-01 # 格式为yyy-MM-dd
datetime: 2020-01-01T15:02:08+08:00  # 日期和时间使用T连接,+表示时区

4. 引用

& 建立锚点,* 引用锚点,<<  合并到当前数据,实例:

defaults: &defaults
  adapter: ppp
  host: qqq
development:
  database: mq
  <<: *defaults
// 上述语句相当于
defaults:
  adapter: ppp
  host: qqq
development:
  database: mq
  adapter: ppp
  host: qqq

// 实例二
- &showell steve
- clark
- eve
- *showell
// 相当于
- steve
- clark
- eve
- steve

最后YAML的使用场景,可以用在脚本语言或者配置文件中,但需要注意不同语言间的数据流转不建议使用YAML。

文章参考:两分钟带你了解YAML(.yml后缀文件) - 知乎

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值