`
fireDragonpzy
  • 浏览: 463206 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

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://blog.csdn.net/watir/article/details/3918654
分享到:
评论

相关推荐

    yaml配置文件解析-yaml

    YAML (YAML Ain't Markup Language) 是一种轻量级的数据序列化语言,被广泛应用于配置文件和数据交换。它具有简洁易读的特性,支持多种编程语言,如Python、Java、Ruby等。YAML的语法特性包括: 1. **大小写敏感**...

    bash-yaml:读取yaml文件并在bash中创建变量

    # 解析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文件)是一项常见的任务,这通常涉及到从文件中获取特定的键值对以供程序使用。在本篇文章中,我们将深入探讨如何在Ruby中有效地读取和处理cfg文件,以及如何根据指定的键来...

    YAML.rb: YAML for Ruby-开源

    例如,你可以创建一个配置文件,其中包含哈希键值对,然后用`YAML.rb`读取这些配置,将其转换为Ruby中的哈希对象,以便在程序中直接使用。 在提供的文件列表中,我们看到有一个名为`redcloth-2.0.2`的文件。这可能...

    导出数据库的所有数据成YML文件

    标题 "导出数据库的所有数据成YML文件" 涉及到的是数据库管理和数据导出技术,特别是将数据库中的所有数据转换为YAML(YAML Ain't Markup Language)格式的文件。YAML是一种常用的数据序列化语言,常用于配置文件或...

    Ruby-将Kubernetes资源状态yamls备份至git

    5. **设置Git钩子**:为了确保资源状态的实时更新,可以设置Git的预提交(pre-commit)钩子,这样每次提交前都会自动执行Ruby脚本,获取最新的资源状态。 6. **配置自动化**:结合持续集成工具(如Jenkins、GitHub ...

    ruby生成java文件的工具

    7. `bean_util.rb` - Bean工具类,可能包含一些通用的Bean操作,如属性设置和获取。 8. `database.yaml` - 配置文件,可能包含了数据库连接信息,如URL、用户名和密码,供工具连接和操作数据库时使用。 综合以上...

    app_configuration:使用 YAML 配置文件或环境变量处理 ruby​​ 应用程序配置的 gem

    AppConfiguration使用 YAML 配置文件或环境变量来设置配置参数。 安装 将此行添加到应用程序的 Gemfile 中: gem 'app_configuration' 然后执行: $ bundle 或者自己安装: $ gem install app_configuration ...

    ruby测试代码6

    从压缩包子文件的文件名称列表来看,我们可以推测这可能是一个游戏或软件项目,包含了一些关键的数据文件和可能的类库。 1. **Ruby编程语言**:Ruby是一种面向对象的、动态类型的编程语言,以其简洁、清晰的语法和...

    ruby 移动图片小工具

    对于图片的元数据,如拍摄日期,Ruby可能通过ImageMagick或MiniMagick这样的第三方库来获取,这两个库能够解析常见的图像文件格式,并提供读取元数据的方法。一旦获取到日期信息,程序会使用`Time`类或`Date`类来...

    sorted_yaml:木偶函数对Yaml进行排序

    在Ruby编程语言中,YAML(YAML Ain't Markup Language)是一种常见的数据序列化格式,广泛用于配置文件、数据交换和脚本之间的数据存储。`sorted_yaml`是针对 Puppet(一个自动化配置管理工具)的扩展,它允许用户...

    Ruby-Mobility可拔插的Ruby翻译框架

    例如,你可以选择将翻译数据存储在数据库中,这样可以方便地进行动态更新和编辑,或者使用JSON文件,以减少数据库交互。Ruby-Mobility支持多种后端,包括ActiveRecord、JSON、YAML等,这些后端可以轻松切换,以适应...

    logstash抽取mongodb 和 mysql 的全套 ruby脚本

    在`mongodb.rb`中,Ruby代码会配置Logstash的input插件来连接MongoDB服务器,指定数据库和集合,并定义查询来获取所需的数据。可能的配置项包括数据库地址、端口、认证信息以及特定的查询语句。 接下来是`jdbc.rb`...

    adrienne_fsharp:解析、过滤、读取一种文件类型并将结果写入不同文件类型的 F-sharp 程序

    当处理一个实际上是多个 YAML 文件混合在一起作为一个大 YAML 文件的巨大文件时,Ruby 的 Nokogiri gem 本身可能不足以处理数据反序列化和重新序列化以及从 YAML 到 XML(或 JSON)的转换。 但是 F# 可以处理诸如实...

    ruby初学者教程(对初学者很有帮助)

    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守护进程集的自动配置_Go_Ruby_下载.zip

    标题中的“基于Kubernetes元数据的Fluentd守护进程集的自动配置”指的是在Kubernetes集群环境中,使用Fluentd作为日志收集器,并通过Kubernetes的元数据(metadata)来自动化配置Fluentd的设置。Fluentd是一个强大的...

    static_model:使用简单的类实现从 YAML 中读取类似 ActiveRecord 的功能

    使用简单的类实现从 YAML 中读取类似 ActiveRecord 的功能 概要: 像 ActiveRecord::Base 一样使用,除了没有数据库,只有一个 YAML 文件。 YAML 应包含一组记录。 有关使用和设置,请查看项目站点: / 要求: ...

    基于Ruby的勇者斗恶龙游戏

    资源管理是游戏开发的关键部分,包括音频、图像和数据文件。Ruby的File和Pathname类可以帮助开发者读取和操作这些资源。例如,游戏中的地图可能存储在JSON或YAML文件中,通过解析这些文件,可以动态生成游戏世界。 ...

    Ruby-httparty让http有趣

    通过集成到你的项目中,你可以轻松地与远程API进行交互,获取或发送数据。例如,只需要几行代码,你就可以设置请求头、URL、参数,并处理响应结果。 使用httparty,你可以创建一个简单的HTTP请求如下: ```ruby ...

Global site tag (gtag.js) - Google Analytics