使用 Ruby 的 JSON
本章介绍如何使用 Ruby 编程语言对 JSON 对象进行编码和解码。让我们从准备环境开始使用 Ruby for JSON 进行编程开始。
环境
在开始使用 Ruby 对 JSON 进行编码和解码之前,您需要安装任何可用于 Ruby 的 JSON 模块。您可能需要安装 Ruby gem,但如果您运行的是最新版本的 Ruby,那么您的机器上必须已经安装了 gem,否则假设您已经安装了 gem,让我们按照以下单个步骤操作 -
$gem install json
使用 Ruby 解析 JSON
以下示例显示前 2 个键保存字符串值,后 3 个键保存字符串数组。让我们将以下内容保存在名为 input.json 的文件中。
{
"President": "Alan Isaac",
"CEO": "David Richardson",
"India": [
"Sachin Tendulkar",
"Virender Sehwag",
"Gautam Gambhir"
],
"Srilanka": [
"Lasith Malinga",
"Angelo Mathews",
"Kumar Sangakkara"
],
"England": [
"Alastair Cook",
"Jonathan Trott",
"Kevin Pietersen"
]
}
下面给出的是一个 Ruby 程序,它将用于解析上述 JSON 文档 -
#!/usr/bin/ruby
require 'rubygems'
require 'json'
require 'pp'
json = File.read('input.json')
obj = JSON.parse(json)
pp obj
在执行时,它将产生以下结果 -
{
"President"=>"Alan Isaac",
"CEO"=>"David Richardson",
"India"=>
["Sachin Tendulkar", "Virender Sehwag", "Gautam Gambhir"],
"Srilanka"=>
["Lasith Malinga ", "Angelo Mathews", "Kumar Sangakkara"],
"England"=>
["Alastair Cook", "Jonathan Trott", "Kevin Pietersen"]
}
"President"=>"Alan Isaac",
"CEO"=>"David Richardson",
"India"=>
["Sachin Tendulkar", "Virender Sehwag", "Gautam Gambhir"],
"Srilanka"=>
["Lasith Malinga ", "Angelo Mathews", "Kumar Sangakkara"],
"England"=>
["Alastair Cook", "Jonathan Trott", "Kevin Pietersen"]
}