关于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://blog.csdn.net/watir/article/details/3918654
分享到:
相关推荐
YAML (YAML Ain't Markup Language) 是一种轻量级的数据序列化语言,被广泛应用于配置文件和数据交换。它具有简洁易读的特性,支持多种编程语言,如Python、Java、Ruby等。YAML的语法特性包括: 1. **大小写敏感**...
# 解析YAML数据并设置Bash变量 name=$(yaml_get "$config" name) age=$(yaml_get "$config" age) email=$(yaml_get "$config" email) # 输出变量 echo "Name: $name" echo "Age: $age" echo "Email: $email" ``` ...
在Ruby编程语言中,读取配置文件(如cfg文件)是一项常见的任务,这通常涉及到从文件中获取特定的键值对以供程序使用。在本篇文章中,我们将深入探讨如何在Ruby中有效地读取和处理cfg文件,以及如何根据指定的键来...
例如,你可以创建一个配置文件,其中包含哈希键值对,然后用`YAML.rb`读取这些配置,将其转换为Ruby中的哈希对象,以便在程序中直接使用。 在提供的文件列表中,我们看到有一个名为`redcloth-2.0.2`的文件。这可能...
标题 "导出数据库的所有数据成YML文件" 涉及到的是数据库管理和数据导出技术,特别是将数据库中的所有数据转换为YAML(YAML Ain't Markup Language)格式的文件。YAML是一种常用的数据序列化语言,常用于配置文件或...
5. **设置Git钩子**:为了确保资源状态的实时更新,可以设置Git的预提交(pre-commit)钩子,这样每次提交前都会自动执行Ruby脚本,获取最新的资源状态。 6. **配置自动化**:结合持续集成工具(如Jenkins、GitHub ...
7. `bean_util.rb` - Bean工具类,可能包含一些通用的Bean操作,如属性设置和获取。 8. `database.yaml` - 配置文件,可能包含了数据库连接信息,如URL、用户名和密码,供工具连接和操作数据库时使用。 综合以上...
AppConfiguration使用 YAML 配置文件或环境变量来设置配置参数。 安装 将此行添加到应用程序的 Gemfile 中: gem 'app_configuration' 然后执行: $ bundle 或者自己安装: $ gem install app_configuration ...
从压缩包子文件的文件名称列表来看,我们可以推测这可能是一个游戏或软件项目,包含了一些关键的数据文件和可能的类库。 1. **Ruby编程语言**:Ruby是一种面向对象的、动态类型的编程语言,以其简洁、清晰的语法和...
对于图片的元数据,如拍摄日期,Ruby可能通过ImageMagick或MiniMagick这样的第三方库来获取,这两个库能够解析常见的图像文件格式,并提供读取元数据的方法。一旦获取到日期信息,程序会使用`Time`类或`Date`类来...
在Ruby编程语言中,YAML(YAML Ain't Markup Language)是一种常见的数据序列化格式,广泛用于配置文件、数据交换和脚本之间的数据存储。`sorted_yaml`是针对 Puppet(一个自动化配置管理工具)的扩展,它允许用户...
例如,你可以选择将翻译数据存储在数据库中,这样可以方便地进行动态更新和编辑,或者使用JSON文件,以减少数据库交互。Ruby-Mobility支持多种后端,包括ActiveRecord、JSON、YAML等,这些后端可以轻松切换,以适应...
在`mongodb.rb`中,Ruby代码会配置Logstash的input插件来连接MongoDB服务器,指定数据库和集合,并定义查询来获取所需的数据。可能的配置项包括数据库地址、端口、认证信息以及特定的查询语句。 接下来是`jdbc.rb`...
当处理一个实际上是多个 YAML 文件混合在一起作为一个大 YAML 文件的巨大文件时,Ruby 的 Nokogiri gem 本身可能不足以处理数据反序列化和重新序列化以及从 YAML 到 XML(或 JSON)的转换。 但是 F# 可以处理诸如实...
Ruby提供了丰富的文件操作接口。 ```ruby File.open("example.txt", "w") do |file| file.puts "Hello, world!" end ``` **11.3 StringIO** `StringIO`是一个内存中的文件对象。 ```ruby io = StringIO.new io....
标题中的“基于Kubernetes元数据的Fluentd守护进程集的自动配置”指的是在Kubernetes集群环境中,使用Fluentd作为日志收集器,并通过Kubernetes的元数据(metadata)来自动化配置Fluentd的设置。Fluentd是一个强大的...
使用简单的类实现从 YAML 中读取类似 ActiveRecord 的功能 概要: 像 ActiveRecord::Base 一样使用,除了没有数据库,只有一个 YAML 文件。 YAML 应包含一组记录。 有关使用和设置,请查看项目站点: / 要求: ...
资源管理是游戏开发的关键部分,包括音频、图像和数据文件。Ruby的File和Pathname类可以帮助开发者读取和操作这些资源。例如,游戏中的地图可能存储在JSON或YAML文件中,通过解析这些文件,可以动态生成游戏世界。 ...
通过集成到你的项目中,你可以轻松地与远程API进行交互,获取或发送数据。例如,只需要几行代码,你就可以设置请求头、URL、参数,并处理响应结果。 使用httparty,你可以创建一个简单的HTTP请求如下: ```ruby ...