欢迎光临Software MyZone,有问题可留言或到站点论坛发帖,争取第一时间帮忙解决 || 站点论坛:火龙论坛 || 淘宝小店:应小心的易淘屋 【欢迎大家提建设性意见】

yaml文件的设置及ruby读取yaml数据

关于yaml的介绍可以查看IBM的 yaml介绍 ,这里主要讲述yaml格式的设置及如何使用ruby读取yaml数据

yaml数据设置

——————————————————————————–

yaml的语法:

Structure通过空格来展示。Sequence里的项用“-”来代表,Map里的键值对用”;”分隔,根据上面的例子,我们设置成下面的格式,并保存为: yaml.yml

data:

name: John Smith

age: 37

spouse:

name: Jane Smith

age: 25

children:

- name: Jimmy Smith

age: 15

- name: Jenny Smith

age: 12

 

data1:

name: watir

age: 30

site: http://www.csdn.net

 

yaml数据的读取

——————————————————————————–

代码如下:

#yaml.yml的存放位置

DATA_FILE = “D://ruby//simple//sample//lib//newFolder//yaml.yml”

#加载yml文件

problem = YAML.load(File.open(DATA_FILE))

puts problem.class

puts problem["data"].class

puts problem["data"]["children"].class

puts problem["data"]["children"][0]["name"]

puts problem["data1"]["name"]

puts problem["site"]

输出值为:

Hash

Hash

Array

Jimmy Smith

watir

http://www.csdn.net

从输出可以看到:

1)通过problem = YAML.load(File.open(DATA_FILE)) 加载的数据是个Hash 值。

2)键值problem["data"]读取的也是个hash

3)Sequence children读取的是数组

总结:

从源文件的加载对象是Hash值,从源数据Structure读取对应的是Hash值,从Sequence中读取的是Array,

摘自(详细):http://firedragonpzy.iteye.com/admin/blogs/1405639

Tags: