Issue
In python you can produce JSON with keys in sorted order by doing
import json
print json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4, separators=(',', ': '))
I have not found a similar option in Go. Any ideas how I can achieve similar behavior in go?
Solution
The json package always orders keys when marshalling. Specifically:
-
Maps have their keys sorted lexicographically
-
Structs keys are marshalled in the order defined in the struct
The implementation lives here ATM:
Answered By – Gustavo Niemeyer
Answer Checked By – Pedro (GoLangFix Volunteer)