如何在Ruby版本1.8.7中解析JSON文件

时间:2016-04-20 19:46:20

标签: ruby rubygems ruby-1.9.2 ruby-1.8.7

我有一个名为Output.json的文件:

[
  {
    "name": "krishna",
    "service": "postman",
    "host": "xxxxxx",
    "doing": [],
    "pool": "xxxxxx",
    "roleType": "yyyyy",
    "simple": true
  }
 ]

这是我的Test.rb文件:

require 'rubygems'
require 'json'
require 'pp'

file = File.read('output.json')
data_hash= JSON.parse(file)
pp data_hash

当我尝试运行脚本时,我得到:

from /usr/lib/ruby/gems/1.8/gems/json-1.4.6/lib/json/common.rb:146:in `parse'

当我从JSON文件中调用名称时,如何打印值“krishna”。

1 个答案:

答案 0 :(得分:0)

虽然我从未尝试过1.8.7版本(仅1.9.3及更高版本)

我认为你的问题是你没有正确阅读文件。请尝试使用File.open

试试这个:

file = File.open('output.json').read
data_hash = JSON.parse(file)
pp data_hash

打印值krishna试试这个(解析后):

puts data_hash['name']  # this outputs krishna
祝你好运