load(source, proc = nil, options = {}) -> object
[permalink][rdoc]restore(source, proc = nil, options = {}) -> object
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
proc として手続きオブジェクトが与えられた場合は、読み込んだオブジェクトを引数にその手続きを呼び出します。
require 'json' str=<<JSON [1,2,3] JSON JSON.load(str) # => [1,2,3] JSON.load(str, proc{|v| p v }) # => [1,2,3] # 以下が表示される # 1 # 2 # 3 # [1,2,3] str=<<JSON { "a":1, "b":2, "c":3 } JSON JSON.load(str) # => {"a"=>1, "b"=>2, "c"=>3} JSON.load(str, proc{|v| p v }) # => {"a"=>1, "b"=>2, "c"=>3} # 以下が表示される # "a" # 1 # "b" # 2 # "c" # 3 # {"a"=>1, "b"=>2, "c"=>3}
入れ子になっているデータの最大の深さを指定します。偽を指定すると深さのチェックを行いません。デフォルトは偽です。
真を指定した場合、JSON::NaN, JSON::Infinity, JSON::MinusInfinity を生成することを許すようになります。偽を指定した場合、これらの値を生成しようとすると例外が発生します。デフォルトは真です。
真を指定すると、sourceがnilの場合にnilを返します。デフォルトは真です。
偽を指定するとマッチするクラスや JSON.create_id が見つかっても付加情報を生成しません。デフォルトは真です。
真を指定するとハッシュのキーを文字列ではなくシンボルにします。デフォルトは偽です。