ホームページ > バックエンド開発 > Golang > JSON を解析するときに Go 構造体が正しく設定されないのはなぜですか?

JSON を解析するときに Go 構造体が正しく設定されないのはなぜですか?

DDD
リリース: 2024-11-16 04:48:03
オリジナル
834 人が閲覧しました

Why Is My Go Struct Not Populating Correctly When Parsing JSON?

JSON を Go 構造体に解析する: 問題の解明

JSON を使用して Go プログラムを構成しようとすると、障害が発生しました。解析された構造体が正しく設定されていませんでした。この問題の詳細を詳しく調べて、解決策を提供しましょう。

提供されたコードは、JSON ファイルを構造体に解析することを目的としていますが、実行すると誤った値が出力されます。根本的な原因は構造体の定義自体にあります。 Go では、JSON エンコーダーおよびデコーダーにアクセスできるように、構造体フィールドをエクスポートする必要があります。これは、フィールド名が大文字で始まる必要があることを意味します。

問題を解決する方法は次のとおりです:

type Settings struct {
    ServerMode bool `json:"serverMode"`
    SourceDir  string `json:"sourceDir"`
    TargetDir  string `json:"targetDir"`
}
ログイン後にコピー

フィールド名 (ServerMode、SourceDir、TargetDir) が大文字で始まることに注意してください。

変更されたコードは JSON ファイルを正常に解析し、構造体に正しい値を設定します。

以上がJSON を解析するときに Go 構造体が正しく設定されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート