[go] JSON 데이터 읽기 및 쓰기

Go 언어에서는 JSON 데이터를 읽고 쓰는 데 사용할 수 있는 내장된 패키지가 있습니다. 이러한 기능을 사용하여 Go 프로그램에서 JSON 데이터를 손쉽게 다룰 수 있습니다.

JSON 데이터 읽기

JSON 데이터를 읽으려면 encoding/json 패키지의 Unmarshal 함수를 사용합니다. 다음은 JSON 데이터를 읽는 예시입니다:

package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name string `json:"name"`
	Age  int    `json:"age"`
}

func main() {
	jsonData := []byte(`{"name": "John Doe", "age": 30}`)
	var person Person
	err := json.Unmarshal(jsonData, &person)
	if err != nil {
		fmt.Println("Error parsing JSON:", err)
		return
	}
	fmt.Println("Name:", person.Name)
	fmt.Println("Age:", person.Age)
}

위의 예시에서는 Unmarshal 함수를 사용하여 JSON 데이터를 구조체로 파싱하고, 이를 활용해 필요한 작업을 수행합니다.

JSON 데이터 쓰기

JSON 데이터를 쓰려면 encoding/json 패키지의 Marshal 함수를 사용합니다. 다음은 JSON 데이터를 쓰는 예시입니다:

package main

import (
	"encoding/json"
	"fmt"
)

type Person struct {
	Name string `json:"name"`
	Age  int    `json:"age"`
}

func main() {
	person := Person{Name: "John Doe", Age: 30}
	jsonData, err := json.Marshal(person)
	if err != nil {
		fmt.Println("Error creating JSON:", err)
		return
	}
	fmt.Println("JSON Data:", string(jsonData))
}

위의 예시에서는 Marshal 함수를 사용하여 구조체를 JSON 데이터로 변환하고, 이를 활용하여 필요한 작업을 수행합니다.

이처럼, Go 언어를 사용하여 JSON 데이터를 읽고 쓸 수 있습니다. JSON 데이터를 Go에서 다룰 때는 encoding/json 패키지의 함수들을 잘 활용하는 것이 중요합니다.

참고 자료