欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

YML/YAML 文件格式与配置文件的使用和书写指南

最编程 2024-02-14 11:51:09
...

原文网址:yml/yaml--文件格式/配置文件--用法/写法_IT利刃出鞘的博客-****博客

简介

说明

YAML 是一种简洁的非标记语言,文件名后缀为.yml,java中经常用它描述配置文件。

YAML以数据为中心,比json/xml等更适合做配置文件。

使用空格进行缩进,分行组织数据,从而使得表示更加简洁易读。

基本规则

  • 大小写敏感。
  • 使用缩进表示层级关系。只能使用空格进行缩进,禁止使用tab缩进。
    • 在SpringBoot中,使用两个空格进行缩进。
  • 使用#表示注释。
  • 字符串可以不用引号标注。
  • 缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级。

数据类型

YAML 支持以下几种数据类型:

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

格式

纯量

简介

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

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

示例

key1: true

字符串

字符串可不用加单引号或双引号

str: 这是一行字符串
# 转为json之后:{ "str": "这是一行字符串" }

可使用双引号或者单引号包裹

多行字符串

# 字符串可以拆成多行,换行符会被转化成一个空格
str: 这是一段
  多行
  字符串
# 转换为 JSON 格式 { "str": "这是一段 多行 字符串" }
# 可使用|保留换行符,也可使用>折叠换行
this: |
  Foo
  Bar
that: >
  Foo
  Bar
# 转换后:{ this: 'Foo\nBar\n', that: 'Foo Bar\n' }

单引号和双引号的区别:单引号会对特殊字符转义,双引号不会对特殊字符转义

str1: '这是\n字符串'
str2: "这是\n字符串"

转换后的结果 

{'str1': '这是\\n字符串', 'str2': '这是\n字符串'}

布尔值

TRUE  #true,True都可以
FALSE  #false,False都可以

整数型

1234

浮点型

3.14
6.8523015e+5  #可以使用科学计数法 

对象

对象键值对:使用冒号结构表示:key: value,冒号后面要加一个空格。

层级关系有如下两种表示方式

写法1:

key:
  key1: value1
  key2: value2

写法2:

key: {key1: value1, key2: value2, ...}

数组

数组/List/Set(用-值表示数组中的一个元素)

:法1

pets:
  - cat
  - dog
  - pig

法2

pets: [cat,dog,pig]

YML支持多维数组

法1:在该项下面缩进一个空格。(貌似不缩进也可以)

-
 - A
 - B
 - C

结果:[["A", "B", "C"]] 

法2:行内表示:

key: [value1, value2, ...]

引用(yml原生支持)

上边是文章的部分内容,为便于维护,全文已转移到此网址:yml/yaml-配置文件的用法 - 自学精灵

推荐阅读