将一行json转换为多行以写入文件(Ruby)

将一行json转换为多行以写入文件(Ruby),json,ruby,Json,Ruby,我遇到过这样的情况:我在ruby中检索一个json字符串,但我试图将其写入一个类似于常见json文件的文件(例如: { "top":{ "mid1":"bot1", "mid2":"bot2" } } 但是,json字符串的结构如下: {"top":{"mid1":"bot1","mid2":"bot2"}} 我看到其他帖子提到做JSON.parse是为了得到我想要的东西,但这只是导致它看起来像这样: {"top"=>{"mid1"=&

我遇到过这样的情况:我在ruby中检索一个json字符串,但我试图将其写入一个类似于常见json文件的文件(例如:

{
    "top":{
        "mid1":"bot1", 
        "mid2":"bot2"
    }
}
但是,json字符串的结构如下:

{"top":{"mid1":"bot1","mid2":"bot2"}}
我看到其他帖子提到做JSON.parse是为了得到我想要的东西,但这只是导致它看起来像这样:

{"top"=>{"mid1"=>"bot1", "mid2"=>"bot2"}}

有没有一种方法可以将json字符串转换成上面第一个代码块中的样子?

第一个表示形式是json。解码版本是Ruby的内部表示形式。如果要返回json,
json.dump(…)
将重新转换它

请记住,这只是演示文稿,数据是相同的


您可能会对as感兴趣,因为它可以生成漂亮的结构化调试输出。

业界最常用的两个英文单词是“pretty”和“tidy”。使用这些单词可以帮助您搜索解决方案。祝您好运!