load(source, proc = nil, options = {}) -> object
[permalink][rdoc][edit]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}
- [PARAM] source:
- JSON 形式の文字列を指定します。他には、to_str, to_io, read メソッドを持つオブジェクトも指定可能です。
- [PARAM] proc:
- Proc オブジェクトを指定します。
- [PARAM] options:
- オプションをハッシュで指定します。指定可能なオプションは以下の通りです。
- :max_nesting
-
入れ子になっているデータの最大の深さを指定します。偽を指定すると深さのチェックを行いません。デフォルトは偽です。
- :allow_nan
-
真を指定した場合、JSON::NaN, JSON::Infinity, JSON::MinusInfinity を生成することを許すようになります。偽を指定した場合、これらの値を生成しようとすると例外が発生します。デフォルトは真です。
- :allow_blank
-
真を指定すると、sourceがnilの場合にnilを返します。デフォルトは真です。
- :create_additions
-
偽を指定するとマッチするクラスや JSON.create_id が見つかっても付加情報を生成しません。デフォルトは真です。
- :symbolize_names
-
真を指定するとハッシュのキーを文字列ではなくシンボルにします。デフォルトは偽です。