| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
                                        Tags
                                        
                                    
                                    - 디자인패턴
 - golang
 - 통합 로깅 시스템
 - 관측 가능성
 - go-sql-driver
 - Kubernetes
 - database/sql
 - RDS
 - GIT
 - Infra
 - AWS
 - blank import
 - replication lag
 - 티스토리챌린지
 - GoF
 - elasticsearch
 - esbuild
 - AI
 - goland
 - logging
 - javascript
 - context7
 - MSA
 - typescript
 - 구조체
 - Intellij
 - 캡슐화
 - go
 - sqs fifo queue
 - 오블완
 
                                        Archives
                                        
                                    
                                    - Today
 
- Total
 
Fall in IT.
Golang JSON 인코딩 / 디코딩 방법 본문
반응형
    
    
    
  안녕하세요.
오늘은 Golang에서 JSON 인코딩 / 디코딩을 사용하여 json object를 string으로 혹은 json string을 object 형태로 변환하는 방법에 대해서 알아보도록 하겠습니다.
소스코드
package main
import (
	"encoding/json"
	"fmt"
)
// Person - 사람 정보
type Person struct {
	Name string
	Age  int
	Sex  int // 0: 여자, 1: 남자
}
func main() {
	fmt.Println("Say hi!")
	// 1. CONVERT JSON OBEJCT TO STRING
	fmt.Println("\n1.CONVERT JSON OBEJCT TO STRING")
	var personA = Person{"Alex", 23, 1}
	fmt.Println("personA Object: ", personA)
	jsonBytes, _ := json.Marshal(personA) // JSON ENCODING
	jsonString := string(jsonBytes)
	fmt.Println("personA String: ", jsonString)
	// 2. CONVERT JSON STRING TO OBJECT
	fmt.Println("\n2. CONVERT JSON STRING TO OBJECT")
	var personObj = Person{}
	err := json.Unmarshal([]byte(jsonString), &personObj) // JSON DECODING
	// EXCEPTION
	if err != nil {
		fmt.Println("Failed to json.Unmarshal", err)
	}
	fmt.Println("personObj Object: ", personObj)
}
결과

모두 즐거운 코딩하세요~
반응형
    
    
    
  '프로그래밍언어 > Golang' 카테고리의 다른 글
| Go 1.18버전부터 추가 된 generic 사용해보기 (0) | 2022.05.02 | 
|---|---|
| Golang Slice 중복 제거하는 방법 (0) | 2022.03.06 | 
| Go 함수에서 포인터형 매개변수 사용하기 (0) | 2021.06.27 | 
| Golang 문자열 변환 방법(문자열, 숫자, 등 data 파싱방법) (1) | 2020.09.03 | 
| Go Time 간단하게 변환하는방법 (0) | 2020.07.30 | 
                          Comments