투케이2K

45. (Go Lang) [Mac Os] Go 문법 : json (제이슨) - JSON 인코딩 수행 및 jsonArray , jsonObject 구조 생성 본문

Go Lang (Go 언어)

45. (Go Lang) [Mac Os] Go 문법 : json (제이슨) - JSON 인코딩 수행 및 jsonArray , jsonObject 구조 생성

투케이2K 2024. 2. 22. 10:43

[개발 환경 설정]

개발 언어 : Go

 

[소스 코드]

package main

import (
	"encoding/json"
	"fmt"
)

func main() {

	// ---------------------------------------------------
	// [기본 설명]
	// ---------------------------------------------------
	// JSON (JavaScript Object Notation) 은 데이터를 교환하는 한 포맷 방식으로 key , value 형식으로 데이터를 생성할 수 있습니다
	// ---------------------------------------------------
	// Go 에서 JSON 을 사용하기 위해서는 표준패키지 encoding/json 을 사용할 수 있습니다
	// ---------------------------------------------------

	// [People 구조체 정의]
	people_1 := People{"Twok", 30}
	people_2 := People{"투케이", 29}

	// [인코딩 구조체 생성]
	var users_array []People
	users_array = append(users_array, people_1)
	users_array = append(users_array, people_2)

	en_json := En_Json{users_array}

	// [Json 인코딩 수행 : Marshal]
	jsonBytes, en_err := json.Marshal(en_json)
	if en_err != nil {
		panic(en_err)
	}

	// [Json 바이트를 문자열로 변경] : [인코딩 완료]
	jsonString := string(jsonBytes)

	// [로그 출력]
	fmt.Println("")
	fmt.Println("----------------------------------------------")
	fmt.Println("[로그 출력 수행]")
	fmt.Println("----------------------------------------------")
	fmt.Println("jsonString : ", jsonString)
	fmt.Println("----------------------------------------------")
	fmt.Println("")
}

// ---------------------------------------------------

// [사람 정보 구조체 생성]
type People struct {
	Name string
	Age  int
}

// ---------------------------------------------------

// [JSON 인코딩 사용될 구조체 생성]
type En_Json struct {
	Users []People
}

// ---------------------------------------------------
 

[결과 출력]

 

 

반응형
Comments