golang で json.Decoder を使用して JSON ファイルを構造体にデコードする
JSON (JavaScript Object Notation) は一般的に使用されるデータ交換形式で、簡潔で簡単に使用できます。読みやすく解析しやすい。 golang では、json.Decoder を使用して JSON ファイルを構造体にデコードできます。
golang では、最初に構造体を定義する必要があり、構造体のフィールドは JSON ファイル内のキーに対応する必要があります。次に、json.Decoder を使用してデコード プロセスを実装します。以下は、例として「people.json」を使用したコード例です。
package main import ( "encoding/json" "fmt" "os" ) type Person struct { Name string `json:"name"` Age int `json:"age"` Country string `json:"country"` } func main() { // 打开JSON文件 file, err := os.Open("people.json") if err != nil { fmt.Println("打开文件失败,错误信息:", err) return } defer file.Close() // 创建Decoder decoder := json.NewDecoder(file) // 解码json到结构体 var people []Person err = decoder.Decode(&people) if err != nil { fmt.Println("解码失败,错误信息:", err) return } // 打印解码结果 for _, p := range people { fmt.Println("姓名:", p.Name) fmt.Println("年龄:", p.Age) fmt.Println("国家:", p.Country) fmt.Println("------------------") } }
上記のコードでは、最初に Person 構造体を定義します。そのフィールドは、「people.json」のフィールドと同じです。 " キーに対応するファイル。 json.NewDecoder 関数を呼び出して json.Decoder オブジェクトを作成します。この関数は、ファイルから JSON データを読み取り、デコードできます。次に、decoder.Decode メソッドを使用して、JSON データを人物スライスにデコードします。
最後に、人物をループしてスライスし、各人の名前、年齢、国を出力します。
コードを記述する前に、実際の JSON ファイル構造に基づいて対応する構造を定義し、デコードの精度を確保できます。また、プログラムのクラッシュや予期しない結果を避けるために、エラーを適切に処理するように注意してください。
上記のコード例が、golang で json.Decoder を使用して JSON ファイルを構造体にデコードする方法を理解するのに役立つことを願っています。
以上がgolang で json.Decoder を使用して JSON ファイルを構造体にデコードしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。