yaml 格式
yaml 格式
基本概念
- 大小写敏感
- 使用缩进表示层级关系
- 缩进的空格数不重要,只要相同层级的元素左对齐即可
注释
# 这是注释
number: 5 # 行尾注释
数据结构
YAML 支持的数据结构有三种:对象、数组、纯量
对象
对象是一组键值对,使用冒号结构表示:
animal: cat
转为 JSON 如下:
{ "animal": "cat" }
对于下面内容:
navbar:
displayLogo: true
logo:
path: /a.png
转为 JSON 如下:
{
"navbar": {
"displayLogo": true,
"logo": { "path": "/a.png" }
}
}
数组
一组以 - 开头的行构成一个数组:
- cat
- dog
- bird
转为 JSON 如下:
["cat", "dog", "bird"]
数组的元素是一个数组:
-
- cat
- dog
- bird
转为 JSON 如下:
[["cat", "dog", "bird"]]
稍微复杂的结构:
menu:
main:
- name: 文档
pageRef: /docs
- name: 博客
pageRef: /blog
转为 JSON 如下:
{
"menu": {
"main": [
{ "name": "文档", "pageRef": "/docs" },
{ "name": "博客", "pageRef": "/blog" }
]
}
}
纯量
包括整数、浮点数、布尔值、Null、日期、时间、字符串 整数:
number: 12
浮点数:
money: 20.5
布尔值:
hidden: true
Null 用 ~ 表示:
title: ~
# 也可以将值直接空着表示 Null
description:
日期:
date: 2025-07-17
时间:
time: 2025-07-17T15:02:31+08:00
字符串
字符串可以使用也可以不使用引号:
title: 'Book Life'
autor: "Emily"
description: new book released
多行字符串:
this: |
Foo
Bar
转为 JSON 如下:
{ "this": "Foo\nBar\n" }
+
保留末尾的换行,-
删除末尾的换行
s1: |
Foo
s2: |+
Foo
s3: |-
Foo
转为 JSON 如下:
{ "s1": "Foo\n", "s2": "Foo\n\n", "s3": "Foo" }
最后更新于