2014-02-24 46 views
-2

我试图输出在人类格式的JSON,我试图用PP和pretty_generate,但两者似乎并不包括转义字符:JSON漂亮打印不转换转义字符

1.8.7 :024 > JSON.pretty_generate(JSON.parse({"a"=>1234, "b"=>56}.to_json)) 
=> "{\n \"a\": 1234,\n \"b\": 56\n}" 
+0

*“但两者似乎并没有包含转义字符” *我看到它们,例如'\ N'在上面。你没看到你期望看到什么? –

+0

@帕特里克是对的;例如[this anawser](http://stackoverflow.com/questions/21774707/generate-string-containing-escaped-interpolation/21774932#21774932),问题是一样的(为了上帝的缘故,升级你的Ruby ,不再支持1.8 :-)) – mdesantis

回答

0

只需要put它有

irb(main):007:0> JSON.pretty_generate(JSON.parse({"a"=>1234, "b"=>56}.to_json)) 
=> "{\n \"a\": 1234,\n \"b\": 56\n}" 
irb(main):008:0> puts JSON.pretty_generate(JSON.parse({"a"=>1234, "b"=>56}.to_json)) 
{ 
    "a": 1234, 
    "b": 56 
} 
=> nil