我有一个函数可以检索我一个JSON,现在我想为base64中的每个条目添加一个图像(取决于我将添加的图像的标题),它有多个级别。 怎么办呢?
这是我的函数已经检索过的JSON示例:
"Animals": {
"Cat": true,
"Dog": true,
"Dino": {},
"Shark": {
"White": true,
"Regular": true
},
}
我想删除true
而不是它,将其替换为依赖于标记的图像(base64格式)。
完成的JSON看起来像:
"Animals": {
"Cat": YWJjMTIzIT8kKiYoKSctPUB+abc123!?$*&()'-=@~,
"Dog": QWxhZGRpbjpvcGVuIHNlc2FtZQ==,
....
答案 0 :(得分:0)
好的,这是一个解决你的问题的答案。我怀疑这不是很有帮助。目前还不清楚你实际上遇到了什么困难。
假设我有一个有效的JSON字符串(注意:你的有效JSON字符串:我必须删除一个逗号并用花括号括起整个东西以使其有效)
mystring = "{\"Animals\": { \"Cat\": true, \"Dog\": true, \"Dino\": {}, \"Shark\": { \"White\": true, \"Regular\": true } }}"
我使用JSON.parse将其转换为ruby哈希:
myhash = JSON.parse(string)
=> {"Animals"=>{"Cat"=>true, "Shark"=>{"Regular"=>true, "White"=>true}, "Dog"=>true, "Dino"=>{}}
我将Cat的值更改为所需的值。请注意,我不知道如果这个值是正确的,或者它是如何生成的,它只是从你的问题中复制过来。
myhash["Animals"]["Cat"] = "YWJjMTIzIT8kKiYoKSctPUB+abc123!?$*&()'-=@~"
=> "YWJjMTIzIT8kKiYoKSctPUB+abc123!?$*&()'-=@~"
我将它转换回JSON。
myhash.to_json
=> "{\"Animals\":{\"Cat\":\"YWJjMTIzIT8kKiYoKSctPUB+abc123!?$*&()'-=@~\",\"Shark\":{\"Regular\":true,\"White\":true},\"Dog\":true,\"Dino\":{}}}"