ホームページ >バックエンド開発 >Golang >構造が不明な JSON 文字列に「count」キーを追加するにはどうすればよいですか?

構造が不明な JSON 文字列に「count」キーを追加するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-08 15:35:13543ブラウズ

How Can I Add a

不明な構造の JSON のデコード

この問題は、不明な構造の JSON 文字列を変更しようとするときに発生します。目的は、既存の JSON:

元の JSON:

{ "votes": { "option_A": "3" } }

目的の JSON:

{ "votes": { "option_A": "3" }, "count": "1" }

に「count」キーを追加することです。 JSON 構造が可変であるため、事前に決定された従来の JSON デコーダを使用するのは現実的ではありません。

解決策: マップにアンマーシャルする

この課題を克服するための実用的なアプローチは、JSON を文字列からインターフェイスへのマップにアンマーシャルすることです。

var raw map[string]interface{}
json.Unmarshal(in, &raw)

これにより、キーと値に基づいて JSON データを操作できるようになります。この場合、新しい「count」キーを追加できます:

raw["count"] = 1

必要な JSON 文字列を生成するには、変更されたマップが JSON 文字列にリマーシャリングされます:

out, err := json.Marshal(raw)

Asその結果、不明な JSON 構造を変更し、必要に応じて「count」キーを追加できます。

以上が構造が不明な JSON 文字列に「count」キーを追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。