パーソナルツール

オブジェクトから、オブジェクトの文字列表現を生成する

作者: 小見 拓 最終変更 2012年01月08日 12時12分

オブジェクトから、オブジェクトの文字列表現を生成する

  • オブジェクトの文字列表現を生成し、プロパティファイルに書き出す
" プロパティファイル'filename'に、
" オブジェクト'values'の文字列表現を記録するファンクション
:function! Store(filename, values)

    " string()で文字列表現生成
    :let l:stored = string(a:values)

    " writefile()で記録
    :call writefile([l:stored], a:filename)

:endfunction


" ファイルに保存するオブジェクトを用意
:let var = {}
:let var.key1 = "value1"
:let var.key2 = 4
:let var.key3 = [ 4, 5, 6, 7 ]
:echo var
"# => {'key1': 'value1', 'key2': 4, 'key3': [4, 5, 6, 7]}


" プロパティファイルに、オブジェクトの文字列表現を記録
:let filename = $HOME . "/store.properties"
:call Store(filename, var)
  • プロパティファイル"$HOME/store.properties"には、オブジェクトの文字列表現が保存される。この文字列表現は、eval()で復元可能。
{'key1': 'value1', 'key2': 4, 'key3': [4, 5, 6, 7]}
ドキュメントアクション
コメント
blog comments powered by Disqus