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

yaml资料的设置及ruby读取yaml数据

    博客分类:
  • ruby
 
阅读更多

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. **大小写敏感**...

    ruby 读取cfg文件

    在Ruby编程语言中,读取配置文件(如cfg文件)是一项常见的任务,这通常涉及到从文件中获取特定的键值对以供程序使用。在本篇文章中,我们将深入探讨如何在Ruby中有效地读取和处理cfg文件,以及如何根据指定的键来...

    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" ``` ...

    YAML.rb: YAML for Ruby-开源

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

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

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

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

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

    ruby测试代码6

    7. **序列化与反序列化**:为了在磁盘上持久化数据,Ruby中可以使用如YAML或JSON进行数据的序列化和反序列化。这些`.dat`和`.Mxx`文件可能就是通过这种方式存储和加载的。 8. **版本控制**:在这样的项目中,版本...

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

    Ruby-Mobility支持多种后端,包括ActiveRecord、JSON、YAML等,这些后端可以轻松切换,以适应项目的变化。 在使用Ruby-Mobility时,你需要定义哪些模型和属性需要进行翻译。这通常通过在模型类上添加`translate`...

    ruby 移动图片小工具

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

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

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

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

    ### Ruby语言介绍与基础知识 #### 一、Ruby语言概述 **1.1 Ruby的历史** Ruby是一种面向对象的脚本语言,由日本人松本行弘(Matsumoto Yukihiro)于1993年开始开发。起初,Ruby是作为一种兴趣项目而诞生的,但...

    Ruby-httparty让http有趣

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

    ruby生成java文件的工具

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

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

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

    yamlweb:用简化的YAML编写HTML和CSS!

    YamlWeb Web开发很难。 您必须学习至少三种语言才能创建可能在其他平台上采用的一种应用程序。 如果我可以使用时间机器回到网络的曙光(而不是尝试重新发明一切),我可能... 我建议将它们作为同伴,请参阅以获取一个

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

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

    Ruby的25个编程细节(技巧、实用代码段)

    Ruby中的纯数据结构: Struct与OpenStruct **Struct** 和 **OpenStruct** 都是用来创建简单的数据容器的类,但它们之间存在一些显著的区别: - **Struct** 在定义时需要明确声明所有字段,而 **OpenStruct** 可以...

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

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

    Ruby on rails 数据库详细配置

    Rails的ActiveRecord库提供了方便的数据模型抽象,使得开发者可以使用Ruby代码轻松操作数据库表。 总的来说,配置Ruby on Rails的数据库涉及到安装必要的数据库驱动和Rails框架,然后在`database.yml`文件中正确...

    Ruby程序设计.doc

    这部分内容未给出详细章节,但可以从上下文推断,这部分可能涉及Ruby中的序列化技术以及YAML格式的使用。 以上内容覆盖了Ruby程序设计的核心知识点,从语言基础到高级特性均有涉及。通过这些知识点的学习,可以全面...

Global site tag (gtag.js) - Google Analytics