Golang で JSON データをエンコードするにはどうすればよいですか?

WBOY
リリース: 2024-06-03 13:44:56
オリジナル
663 人が閲覧しました

Go で JSON データをエンコードするには、次の手順を実行します。 json.Marshal を使用して Go 型を JSON バイト スライスにエンコードします。 json.Unmarshal を使用して JSON エンコーディングから Go 型をデコードし、JSON バイト スライスを Go 型に保存します。

如何在 Golang 中编码 JSON 数据?

Golang で JSON データをエンコードするにはどうすればよいですか?

Go での JSON データのエンコードは、encoding/json 標準ライブラリを使用して実行できる簡単なプロセスです。このライブラリは、Go 型を JSON にエンコードしたり、JSON エンコードから Go 型をデコードしたりするための豊富な関数セットを提供します。 encoding/json 标准库来完成的简单明了的过程。该库提供了丰富的函数用于将 Go 类型编码为 JSON,以及从 JSON 编码中解码 Go 类型。

编码 Go 类型为 JSON

要将Go类型编码为JSON,可以使用 json.Marshal 函数。该函数接受一个 Go 值并返回其相应的 JSON 编码的字节切片。

package main

import (
    "encoding/json"
    "fmt"
)

type User struct {
    Name  string
    Age   int
    Admin bool
}

func main() {
    user := User{Name: "John Doe", Age: 30, Admin: false}

    jsonBytes, err := json.Marshal(user)
    if err != nil {
        fmt.Println("Error encoding user:", err)
        return
    }

    fmt.Println(string(jsonBytes))
}
ログイン後にコピー

上面的代码片段会输出如下 JSON:

{"Name":"John Doe","Age":30,"Admin":false}
ログイン後にコピー

解码 JSON 为 Go 类型

要从 JSON 编码中解码一个 Go 类型,可以使用 json.Unmarshal

Go タイプを JSON にエンコードする

Go タイプを JSON にエンコードするには、json.Marshal 関数を使用できます。この関数は Go 値を受け入れ、対応する JSON エンコードされたバイト スライスを返します。

package main

import (
    "encoding/json"
    "fmt"
)

type User struct {
    Name  string
    Age   int
    Admin bool
}

func main() {
    jsonBytes := []byte(`{"Name":"John Doe","Age":30,"Admin":false}`)

    var user User
    if err := json.Unmarshal(jsonBytes, &user); err != nil {
        fmt.Println("Error decoding user:", err)
        return
    }

    fmt.Println(user)
}
ログイン後にコピー

上記のコード スニペットは次の JSON を出力します:

{John Doe 30 false}
ログイン後にコピー
JSON を Go 型にデコードする
  • JSON エンコーディングから Go 型をデコードするには、json.Unmarshal 関数を使用できます。この関数は、JSON でエンコードされたバイトのスライスを受け入れ、対応する値を提供された Go タイプに保存します。
  • rrreee
  • 上記のコード スニペットは次の結果を出力します:
  • rrreee
  • 実際的なケース
多くの実際的なシナリオでは、次のような Go 型を JSON にエンコードする必要があります:

    HTTP API の構築
  • JSON へのデータの保存ファイル
  • 分散システムでのデータ転送
逆に、JSON から Go 型をエンコードおよびデコードすることには、次のような多くの実用的なアプリケーションもあります: 🎜🎜🎜 HTTP API 応答の解析 🎜🎜 JSON ファイルからのデータの読み取り 🎜🎜 分散システムからのデータの受信🎜🎜

以上がGolang で JSON データをエンコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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