加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 在一个文件中处理多个JSON对象

发布时间:2020-12-17 01:22:14 所属栏目:百科 来源:网络整理
导读:我做了一些愚蠢的事情……我收集了大量的json数据并将其保存在一个文件中.我现在发现自己在尝试 JSON.parse(文件)时遇到错误,因为它的JSON对象在JSON对象之后.任何人都可以建议我如何解析这些数据?结构如下.下一个条目是具有完全相同结构的对象. {"purchase
我做了一些愚蠢的事情……我收集了大量的json数据并将其保存在一个文件中.我现在发现自己在尝试 JSON.parse(文件)时遇到错误,因为它的JSON对象在JSON对象之后.任何人都可以建议我如何解析这些数据?结构如下.下一个条目是具有完全相同结构的对象.

{"purchase": 
  { 
   "amount": 34.595399,"uid": 1282907706,"user": 
          {
                 "id": xxxx
                 "name": "xxxx"
          },"dailycount": 135.82373100000001,"productdetails": 
     {
          "type": "shoes"
     },"details": 
    {
          "gender": "male"
   },"createdin": "Asia/Tokyo","id": 147707740,"comments": []}}

解决方法

问题当然是你没有一个有效的json对象.

irb(main):004:0> JSON.parse("{'foo':'bar'},{'foo':'baz'}")
JSON::ParserError: 705: unexpected token at '{'foo':'bar'},{'foo':'baz'}'
    from /usr/lib/ruby/gems/1.8/gems/json-1.4.6/lib/json/common.rb:146:in `parse'
    from /usr/lib/ruby/gems/1.8/gems/json-1.4.6/lib/json/common.rb:146:in `parse'
    from (irb):4

所以,我会在你最后一个大括号结束之前添加一个’“键”:[‘和””.使它成为有效的json.

irb(main):018:0> json = '{"key" : [{"foo":"bar"},{"foo":"baz"}]}'
=> "{"key" : [{"foo":"bar"},{"foo":"baz"}]}"
irb(main):019:0> JSON.parse json
=> {"key"=>[{"foo"=>"bar"},{"foo"=>"baz"}]}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读