码迷,mamicode.com
首页 > 其他好文 > 详细

.yml文件格式

时间:2018-10-05 22:34:14      阅读:317      评论:0      收藏:0      [点我收藏+]

标签:编程语言   https   空格   发音   并且   序列化   val   dash   new   

http://yaml.org/

YAML: YAML Ain‘t Markup Language

What It Is: YAML is a human friendly data serialization  standard for all programming languages.


YAML(Yet Another Markup Language)(发音 /?jæm?l/ )
 一种基于Unicode容易阅读,容易和脚本语言交互的,用来表达资料序列的编程语言。

 

适应场景

  1. 脚本语言:由于实现简单,解析成本很低,YAML 特别适合在脚本语言中使用
  2. 序列化: YAML是由宿主语言数据类型直转,的比较适合做序列化。
  3. 配置文件:写 YAML 要比写 XML 快得多(无需关注标签或引号),并且比 INI 文档功能更强。由于兼容性问题,不同语言间的数据流转建议不要用 YAML。

YAML 语法

  1. 使用空格 Space 缩进表示分层,不同层次之间的缩进可以使用不同的空格数目,但是同层元素一定左对齐,即前面空格数目相同(不能使用 Tab,各个系统 Tab对应的 Space 数目可能不同,导致层次混乱)
  2. ‘#’表示注释,只能单行注释,从#开始处到行尾
  3. 破折号后面跟一个空格(a dash and space)表示列表
  4. 冒号和空格表示键值对 key: value
  5. 简单数据(scalars,标量数据)可以不使用引号括起来,包括字符串数据。用单引号或者双引号括起来的被当作字符串数据,在单引号或双引号中使用C风格的转义字符
 
  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格。
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

 

本文介绍 YAML 的语法,以 JS-YAML 的实现为例。你可以去在线 Demo 验证下面的例子。

YAML 支持的数据结构有三种。

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

以下分别介绍这三种数据结构。

三、数组

一组连词线开头的行,构成一个数组。


- Cat
- Dog
- Goldfish

转为 JavaScript 如下。


[ ‘Cat‘, ‘Dog‘, ‘Goldfish‘ ]

数据结构的子成员是一个数组,则可以在该项下面缩进一个空格。


-
 - Cat
 - Dog
 - Goldfish

转为 JavaScript 如下。


[ [ ‘Cat‘, ‘Dog‘, ‘Goldfish‘ ] ]

数组也可以采用行内表示法。


animal: [Cat, Dog]

转为 JavaScript 如下。


{ animal: [ ‘Cat‘, ‘Dog‘ ] }

 

 

Mapping Scalars to Sequences 简单数据列表键值对

american:
- Boston Red Sox
- Detroit Tigers
- New York Yankees
national:
- New York Mets
- Chicago Cubs
- Atlanta Braves

 

 

 

 

 

 

 




.yml文件格式

标签:编程语言   https   空格   发音   并且   序列化   val   dash   new   

原文地址:https://www.cnblogs.com/youxin/p/9746013.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!