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=(\'
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:
Gustavo Niemeyer gave great answer, just a small handy snippet I use to validate and reorder/normalize []byte representation of json when required
func JsonRemarshal(bytes []byte) ([]byte, error) {
var ifce interface{}
err := json.Unmarshal(bytes, &ifce)
if err != nil {
return []byte{}, err
}
output, err := json.Marshal(ifce)
if err != nil {
return []byte{}, err
}
return output, nil
}