YAML::SyckでYAMLを解析する

| コメント(0) | トラックバック(0)

行指向のパラメータファイルをyamlに書き換えたら楽かなと思い、ちょっとテストしてみた。

パラメータファイルconfig.ymal


map : a280
island1 :
popsize : [10, 20, 30]
end_generation : 100
island2 :
popsize : [10,20,30]
end_generation : 100

テスト用スクリプト


#!/usr/bin/perl

use strict;
use warnings;

use YAML::Syck;
use Smart::Comments;

my $data = YAML::Syck::LoadFile('./data/param/config.yaml');
my $sca = $data->{island1}->{end_generation};
my $array_ref_1 = $data->{island1}->{popsize};
my $array_ref_2 = $data->{island2}->{popsize};
### $data
### $array_ref_1
### $array_ref_2


実行結果


### $data: {
### island1 => {
### end_generation => '100',
### popsize => [
### '10',
### '20',
### '30'
### ]
### },
### island2 => {
### end_generation => '100',
### popsize => [
### '10,20,30'
### ]
### },
### map => 'a280'
### }


### $array_ref_1: [
### '10',
### '20',
### '30'
### ]


### $array_ref_2: [
### '10,20,30'
### ]

スペースがあるかどうかで配列になるかどうかが決まる。ちょっとハマりかけるところだった。

トラックバック(0)

トラックバックURL: http://hoge.sub.jp/blog-cgi/mt/mt-tb.cgi/476

コメントする

このブログ記事について

このページは、Lyoが2007年9月 4日 19:01に書いたブログ記事です。

ひとつ前のブログ記事は「DBIx::Classで手動コミット」です。

次のブログ記事は「リファレンスのその先にあるもの。」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

OpenID対応しています OpenIDについて
Powered by Movable Type 4.261