yaml on ruby
rubyist magazineをみてyamlを触ってみた。
こんな感じのファイルを、(実際には、-で始まる行以外はspaceでindentされてる。preがうまくできないの)
- name: R303
bofname: AD
starttime:
endtime:
location: Plenary
- name: R304
bofname: AD
starttime: 10:30
endtime: 11:30
location: Plenary
こんな感じのスクリプトに食わせると
#!/usr/bin/env ruby
require 'yaml'
str = ARGF.read()
data = YAML.load(str)
p data
こんな感じででてきます。
a = [{"name"=>"R303",
"endtime"=>nil,
"starttime"=>nil,
"bofname"=>"AD",
"location"=>"Plenary"},
{"name"=>"R304",
"endtime"=>690,
"starttime"=>630,
"bofname"=>"AD",
"location"=>"Plenary"}]
ほへー。簡単。
また、逆に
a = [{"name"=>"R303",
"endtime"=>nil,
"starttime"=>nil,
"bofname"=>"AD",
"location"=>"Plenary"},
{"name"=>"R304",
"endtime"=>690,
"starttime"=>630,
"bofname"=>"AD",
"location"=>"Plenary"}]
print a.to_yaml
とかすると、最初のyamlファイルが吐き出される。
データを簡単にファイルに格納したいときにはいいかも。