JSON

Go JSON Handling

Handling JSON Data

Go JSON handling uses encoding/json for marshaling.

Introduction to JSON in Go

JSON (JavaScript Object Notation) is a widely used format for data interchange. In Go, the encoding/json package provides functionality to work with JSON data, including marshaling Go data structures into JSON and unmarshaling JSON into Go data structures.

Marshaling Go Structs to JSON

Marshaling refers to converting a Go data structure into JSON. This is useful when you need to send data over a network or save it to a file. The json.Marshal function is used for this purpose.

In this example, we define a User struct and initialize it with some data. Using json.Marshal, we convert it into a JSON string.

Unmarshaling JSON to Go Structs

Unmarshaling is the process of converting JSON data back into a Go struct. This is useful when you receive JSON data from an API or a file. You can use the json.Unmarshal function for this.

Here, we define a JSON string and use json.Unmarshal to convert it into a User struct. This demonstrates how to parse JSON data into usable Go data structures.

Handling JSON Arrays

JSON arrays can be marshaled and unmarshaled in a similar manner. You can use slices in Go to represent JSON arrays.

This example shows how to marshal a slice of User structs into a JSON array and then unmarshal it back into a slice of structs.