あなたは私が行くで同様のオプションを発見していないGoでソートされたキーを使用してJSONを生成する方法は? Pythonで
import json
print json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4, separators=(',', ': '))
を行うことによって、ソート順でキーを使用してJSONを生成することができます。どのように私は同じような行動を達成することができます任意のアイデア?
あなたは私が行くで同様のオプションを発見していないGoでソートされたキーを使用してJSONを生成する方法は? Pythonで
import json
print json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4, separators=(',', ': '))
を行うことによって、ソート順でキーを使用してJSONを生成することができます。どのように私は同じような行動を達成することができます任意のアイデア?
jsonパッケージは、マーシャリング時に常にキーを注文します。具体的に:
はマップがそのキーが辞書順
構造体のキーが構造体
実装で定義された順序で整列化されてここに住んでATMにソートしている:
Noice。私はなぜエンコーディング/ jsonのドキュメントがこの重要なプロパティに言及していないのだろうかと思います。 –
これは文書化されました:https://golang.org/pkg/encoding/json/#Marshal:マップ値はJSONオブジェクトとしてエンコードされます。マップのキータイプは、文字列、整数型、またはencoding.TextMarshalerを実装する必要があります。マップキーはJSONオブジェクトキーとしてソートされ、上記の文字列値で説明されているUTF-8強制に従って、以下のルールを適用して使用します。 – programaths
構造キーはどうですか?オーダーは文書化されていますか? – updogliu
あなたは使用したソリューションを投稿できますか? 'NewEncoder(...)。Encode(structInstance)'を使ってみましたが、出力されたjsonキーはソートされません。 –