有人知道在Go中漂亮地打印JSON输出的简单方法吗?
库存的 http://golang.org/pkg/encoding/json/软件包似乎不包含此功能(编辑:确实如此,请参见接受的答案),而且快速的Google并没有发现任何明显的问题。
我正在寻找的用途既可以打印出json.MarshalJSON 的结果,又可以从任何地方格式化一个充满JSON的字符串,因此出于调试目的而更易于阅读。
json.Marshal
通过漂亮的印刷,我认为您的意思是缩进,像这样
{ "data": 1234 }
而不是
{"data":1234}
最简单的方法是使用MarshalIndent,您可以通过indent参数指定如何缩进。因此,json.MarshalIndent(data, "", " ")将使用四个空格进行缩进进行漂亮的打印。
MarshalIndent
indent
json.MarshalIndent(data, "", " ")