Go では、リストは非常に一般的なデータ構造です。リストを操作するとき、リストを JSON 形式に変換する必要がある場合があります。 JSON (JavaScript Object Notation) は、読み書きが簡単で、処理が簡単な軽量のデータ交換形式です。 Go 言語はリストを JSON 形式に簡単に変換するため、異なるプログラム間のデータ交換が簡単かつ信頼性の高いものになります。
以下では、リストを JSON に変換するいくつかの方法を紹介します。
組み込みの関数があります。 Go の json .Marshalf 関数は、あらゆる構造、マップ型、または基本的なデータ型を JSON 形式に変換できます。
以下は、構造を JSON に変換する簡単な例です:
type Person struct { FirstName string `json:"first_name"` LastName string `json:"last_name"` Age int `json:"age"` } func main() { p := Person{FirstName: "John", LastName: "Doe", Age: 30} json, err := json.Marshal(p) }
上記のコードでは、人の基本情報を表す person という名前の構造を定義します。 json.Marshal を使用してこの構造を JSON 形式に変換し、変数 json に格納します。
json.Marshal 関数の使用に加えて、json.NewEncoder 関数を使用してリストを JSON に変換することもできます。以下に示すように:
type Person struct { FirstName string `json:"first_name"` LastName string `json:"last_name"` Age int `json:"age"` } func main() { people := []Person{ {FirstName: "John", LastName: "Doe", Age: 30}, {FirstName: "Jane", LastName: "Doe", Age: 29}, } var buf bytes.Buffer enc := json.NewEncoder(&buf) enc.Encode(people) }
上記のコードでは、2 つの person 構造を含む people リストを定義します。次に、バッファーを作成し (bytes パッケージの Buffer タイプを使用)、json.NewEncoder 関数を使用してバッファーをエンコーダーとして作成しました。最後に、人物リストをエンコーダーの Encode メソッドに渡します。これにより、人物リストが JSON 形式に変換され、バッファーに保存されます。
概要
上記は、Go を使用してリストを JSON 形式に変換する方法を示す 2 つの簡単な例です。実際の開発では、通常、これらのメソッドまたはその他のサードパーティ ライブラリを使用して、JSON エンコードおよびデコードの問題を処理します。どの方法を使用する場合でも、変換プロセスは通常比較的シンプルで簡単です。このため、Go はクロスプラットフォーム アプリケーションや Web サービスを構築するための人気のプログラミング言語となっています。
以上がgolang リストを json に変換の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。