"Go YAML Unmarshal"의 두 판 사이의 차이

18번째 줄: 18번째 줄:


func main() {
func main() {
var yamlBytes = []byte(`
var bytes = []byte(`
id: 1
id: 1
name: Reds
name: Reds
28번째 줄: 28번째 줄:
`)
`)
var colorGroup ColorGroup
var colorGroup ColorGroup
err := yaml.Unmarshal(yamlBytes, &colorGroup)
err := yaml.Unmarshal(bytes, &colorGroup)
if err != nil {
if err != nil {
fmt.Println("error:", err)
fmt.Println("error:", err)
}
}
fmt.Printf("%+v", colorGroup)
fmt.Printf("%+v", colorGroup)
}
</syntaxhighlight>
==예시: Animals==
<syntaxhighlight lang='go' run>
package main
import (
        "fmt"
        "gopkg.in/yaml.v2"
)
type Animal struct {
Name  string
Order string
}
func main() {
var bytes = []byte(`
- name: Platypus
  order: Monotremata
- name: Quoll
  order: Dasyuromorphia
`)
var animals []Animal
err := json.Unmarshal(bytes, &animals)
if err != nil {
fmt.Println("error:", err)
}
fmt.Printf("%+v", animals)
}
}
</syntaxhighlight>
</syntaxhighlight>

2021년 10월 26일 (화) 19:12 판

1 개요

Go YAML Unmarshal()

2 예시: ColorGroup

package main

import (
        "fmt"
        "gopkg.in/yaml.v2"
)

type ColorGroup struct {
	ID     int
	Name   string
	Colors []string
}

func main() {
	var bytes = []byte(`
id: 1
name: Reds
colors:
- Crimson
- Red
- Ruby
- Maroon
`)
	var colorGroup ColorGroup
	err := yaml.Unmarshal(bytes, &colorGroup)
	if err != nil {
		fmt.Println("error:", err)
	}
	fmt.Printf("%+v", colorGroup)
}

3 예시: Animals

package main

import (
        "fmt"
        "gopkg.in/yaml.v2"
)

type Animal struct {
	Name  string
	Order string
}

func main() {
	var bytes = []byte(`
- name: Platypus
  order: Monotremata
- name: Quoll
  order: Dasyuromorphia
`)
	var animals []Animal
	err := json.Unmarshal(bytes, &animals)
	if err != nil {
		fmt.Println("error:", err)
	}
	fmt.Printf("%+v", animals)
}

4 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}