[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
패키지의 함수들을 잘 활용하는 것이 중요합니다.
참고 자료
- Go 공식 문서: encoding/json 패키지
- A Tour of Go: JSON 패키지