2017-05-29 67 views
1

在命令行中使用jq --stream -c,我可以格式化很喜歡這個JSON的:Golang相當於`JQ --stream -c`

{ 
    "object": { 
    "something": { 
     "key1": 123, 
     "key2": 456 
    }, 
    "something_else": { 
     "key1": [ 
     "value1", 
     "value2" 
     ] 
    } 
    } 
} 

到這一點:

[["object","something","key1"],123] 
[["object","something","key2"],456] 
[["object","something","key2"]] 
[["object","something_else","key1",0],"value1"] 
[["object","something_else","key1",1],"value2"] 
[["object","something_else","key1",1]] 
[["object","something_else","key1"]] 
[["object","something_else"]] 
[["object"]] 

我已經看了通過Golang documentation for JSON但找不到類似的東西。有沒有我錯過的功能?

更準確地說我想打印上面的JSON像這樣:

object.something.key1=123 
object.something.key2=345 
object.something_else.key1.0=value1 
object.something_else.key1.1=value2 
+0

有人可以告訴我爲什麼這是被拒絕嗎?這是一個直截了當的問題。 – user214259

+0

jq是一個cl工具,go是編寫這樣一個工具的語言。 – RickyA

回答

0

我已經通過Golang文檔JSON看了,但找不到類似的事情。有沒有我錯過的功能?

不,你沒有遺漏任何東西。當前的JSON庫不支持您「開箱即用」描述的內容。

如果你想這個工作,你需要找到一個軟件包,提供您需要的靈活性或自己滿足自定義類型json.Marshaler

+0

夠公平的。謝謝。 – user214259