如何在jruby中将Java Map转换为json
发布时间:2020-12-17 03:22:58 所属栏目:百科 来源:网络整理
导读:我有一个 Java HashMap,我在J Ruby,我试图将其转换为JSON,但它没有正确转换,我认为这个例子显示了问题: $irb [17:23:50]irb(main):001:0 require 'java'= falseirb(main):003:0 require 'json'= trueirb(main):005:0 h = java.util.HashMap.new()= {}irb(ma
我有一个
Java HashMap,我在J
Ruby,我试图将其转换为JSON,但它没有正确转换,我认为这个例子显示了问题:
$irb [17:23:50] irb(main):001:0> require 'java' => false irb(main):003:0> require 'json' => true irb(main):005:0> h = java.util.HashMap.new() => {} irb(main):006:0> x = {} => {} irb(main):007:0> JSON.parse JSON.dump x => {} irb(main):008:0> JSON.parse JSON.dump h JSON::ParserError: unexpected token at '"{}"' from json/ext/Parser.java:251:in `parse' from /Users/kimptoc/.rvm/rubies/jruby-1.7.3/lib/ruby/1.9/json/common.rb:155:in `parse' from (irb):9:in `evaluate' from org/jruby/RubyKernel.java:1066:in `eval' from org/jruby/RubyKernel.java:1409:in `loop' from org/jruby/RubyKernel.java:1174:in `catch' from org/jruby/RubyKernel.java:1174:in `catch' from /Users/kimptoc/.rvm/rubies/jruby-1.7.3/bin/irb:13:in `(root)' irb(main):010:0> JSON.dump h => ""{}"" 关于如何处理这个问题的任何想法 – 我是否需要将地图转换为Ruby地图? 谢谢, 解决方法
目前,它似乎你是对的,json gem不支持HashMap,所以唯一的方法是转换为ruby:
> JSON.parse JSON.dump h.to_hash => {} 可能值得开一个ticket. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |