RubyでYAMLを扱う方法を現役エンジニアが解説【初心者向け】

初心者向けにRubyでYAMLを扱う方法について解説しています。YAMLとはデータの表記方法のことで、Rubyでは設定ファイルで利用されています。他にフレームワーク、ツールの設定ファイルの形式として使用されています。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

RubyでYAMLを扱う方法について解説します。

 
そもそもRubyについてよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。

なお本記事は、TechAcademyのオンラインブートキャンプRuby講座の内容をもとに紹介しています。

 

田島悠介

今回は、Rubyに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

YAMLを扱う方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

YAML (YAML Ain’t Markup Language) とは

YAMLとはファイルの書き方の一つで.ymlという拡張子で表されます。

YAMLはインデントを使って階層構造を表すため読みやすくendなどの終了タグなど必要ないので書きやすく、データをハッシュ、スカラー、配列の3種類で表すためとても理解しやすいという特徴があります。

 

RubyでYAMLを扱う方法

RubyでYAMLを扱うにはrubyファイルの最初に

 

require "yaml"

 

と書くことによってyamlライブラリを扱うことができます。loadメソッドによってファイルを読み込むことが可能となります。

 

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

実際に書いてみよう

それでは実際に書いてみましょう!!

 

# planet.yml
- mercury
- venus
- earth
- mars
- jupiter
- saturn
# planet.rb
require "yaml"
planets = YAML.load(File.new("planet.yml"))
planets.each do | planet |
 puts planet
end
$ ruby planet.rb
#=>
mercury
venus
earth
mars
jupiter
saturn

 

loadメソッドでymlファイルを読み込んだ配列を(ymlファイルで各行の先頭に “-” を入れると配列になります。)

planet.ymlには配列のデータが入っていることになります。

こちらをplanet.rbで読み込んでplanetsという変数に渡して、each文で実行したことを表しています。

 

監修してくれたメンター

町田耕

大学卒業後、塾の数学科講師として数年間勤めた後、会社の経営に携わる。

会社経営時代は主に財務関係が中心に担当していたが、インフラエンジニアの妻の勧めもありプログラミングを独学で学び始める。プログラミングのセミナーなど数多く受け、IT関連の受託開発会社に勤めた後、ITシステム開発会社を設立。

現在、システムの請負としての業務を行う傍らテックアカデミーのRuby on Railsのメンターも勤めている。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でRuby on Railsを使ったプログラミングを習得できるオンラインブートキャンプRuby講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。