我做了一些愚蠢的事情……我收集了大量的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"}]}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。