본문 바로가기
프로그래밍

golang 마샬링 / 언마샬링

by 자유코딩 2020. 9. 17.

고랭 + gRPC에서 json 데이터를 다룰때 마샬링과 언마샬링이라는 개념이 있다.

 

보통 encoding/json 패키지를 활용해서 마샬링을 하게 된다.

 

마샬링은 데이터를 바이트로 변경한다.

 

var name string
name = "hello"

byte := json.Marshal(name)

 

언마샬링은 바이트를 고랭에서 쓸 수 있는 변수 형태로 변경한다.

 

name := "hello"
var us string
json.Unmarshal([]byte(name), &us)

 

 

여기서 조금 특이한 점은 Unmarshal의 파라미터로 &us 포인터 형태로 전달한다

이렇게 하면 us 변수에 해당 값이 할당된다.

 

조금 C 언어 같은 느낌이다.

 

댓글