&tag(Ruby/JSON);
*目次 [#d7763950]
#contents
*参考情報 [#jd18e647]
-[[メモ: Ruby で JSON のパース/シリアライズ | anobota:http://haraita9283.blog98.fc2.com/blog-entry-364.html]]


*概要 [#le519f9c]
-ruby 1.9ではJSON標準添付。
-[[module JSON:http://docs.ruby-lang.org/ja/2.1.0/class/JSON.html]]
-simple-json-parser-builderは日本語がそのまま読める形で表示される。

*簡単な使い方 [#w0f84aff]
-Ruby 2.1.2を使用
#pre{{
require 'json'

json_data = JSON.parse('[1, 2, 3]')
p json_data
json_data = JSON.parse('{"foo": "bar"}')
p json_data

json_data = JSON.parse('[1, 2, 3, {"foo": "bar"}]')
p json_data
str =  JSON.pretty_generate(json_data)
puts str
}}
-以下出力。
#pre{{
[1, 2, 3]
{"foo"=>"bar"}
[1, 2, 3, {"foo"=>"bar"}]
[
  1,
  2,
  3,
  {
    "foo": "bar"
  }
]
}}


*Tips [#w1c2aab2]
**改行コードが入っていたらどうする [#e2a94b4e]
-[[javascript - Parsing JSON containing new line characters - Stack Overflow:http://stackoverflow.com/questions/11591784/parsing-json-containing-new-line-characters]]にあるようにエスケープする
 obj = JSON.parse('{"hallo":"line1\\r\\nline2","a":[5.5,5.6,5.7]}');
-もしくは[[javascript - Parsing JS JSON to Ruby - Stack Overflow:http://stackoverflow.com/questions/17239567/parsing-js-json-to-ruby/17240841#17240841]]にあるように単に削除する。
 a = input.gsub( /[\r\n]/m, '' )



トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS