本文转自Unity Connect博主 超级汽水
为什么是 YAML ? 首先我们来看看什么是YAML :
-
YAML 不是标记语言。
-
YAML 是针对所有编程语言的人性化数据序列化标准。
-
像 XML 一样,它使用可移植的、独立于平台的格式来表示任何种类的的数据,但是它是人性的化格式这意味着它更方便我们阅读。
-
同时 YAML 也是 Unity 编辑器使用的序列化格式。
它看起来像是这样 :
YAML 的基本语法
-
大小写敏感。
-
使用缩进来表示层级关系。
-
缩进不允许使用 Tab
-
使用 # 来表示单行注释,不支持多行注释。
-
文件开头要使用 — 来表示文档开始,使用 … 来表示。文档结束,一个文件中可以存在多个文档。
-
文件的拓展名一般为 .yaml 比如 Player.yaml
YAML 支持的数据结构
翻译并不完全准确,每个人译法不同请以英文为主。
现在我们来学习一下三大数据结构,这一部分内容请结合下方的特殊符号讲解一起看。 1 .散列表 : 文本模式:
---
# 使用冒号来代表,格式为 key: value 冒号后面要加一个空格
key: value
# 使用缩进来表示层级关系
key:
key1: value1
key2: value2
# flow 风格写法
key: {key1: value1, key2: value2}
# 无序键值对
map:
Block style: !!map
key1 : value1
key2 : value2
# Flow style
Flow style: !!map { key1: value1, key2: value2 }
# 结果
# map:
# { 'Block style': { key1: 'value1', key2: 'value2' },
# 'Flow style': { key1: 'value1', key2: 'value2' } }
# 有序键值对 (字典)
omap:
Block style: !!omap
- one: 1
- two: 2
- three: 3
# Flow style
Flow style: !!omap [ one: 1, two: 2, thre