オブジェクトの文字列表現から、オブジェクトを復元する
作者: 小見 拓
—
最終変更
2012年01月08日 12時12分
オブジェクトの文字列表現から、オブジェクトを復元する
- プロパティファイルを読み込んで、オブジェクトを生成する
" プロパティファイル'filename'を読み込んで、 " オブジェクトを生成するファンクション :function! Load(filename) " ファイルからオブジェクトの文字列表現を読み込む :let l:stored = "" :for l:line in readfile(a:filename) :let l:stored .= l:line :endfor " eval()でオブジェクトを復元する :let l:self = eval(l:stored) :return l:self :endfunction :let filename = $HOME . "/store.properties" :let value = Load(filename) :echo value "# => {'key1': 'value1', 'key2': 4, 'key3': [4, 5, 6, 7]} :echo value.key1 "# => value1 echo value.key3 "# => [4, 5, 6, 7]
- プロパティファイル"$HOME/store.properties"。オブジェクトを文字列表現で記述。ルートオブジェクトはリストか、ディクショナリが良い。
{ "key1":"value1", "key2":4, "key3":[ 4, 5, 6, 7 ] }