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

 
(같은 사용자의 중간 판 6개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
==개요==
;Go YAML Marshal()
;Go YAML Marshal()
* 구조체 →  YAML


==예시: ColorGroup==
<syntaxhighlight lang='go' run>
<syntaxhighlight lang='go' run>
package main
package main
import (
import (
         "fmt"
         "fmt"
         "gopkg.in/yaml.v2"
         "gopkg.in/yaml.v3"
)
)
type ColorGroup struct {
ID    int
Name  string
Colors []string
}
func main() {
func main() {
type ColorGroup struct {
colorGroup := ColorGroup{
ID    int
Name  string
Colors []string
}
group := ColorGroup{
ID:    1,
ID:    1,
Name:  "Reds",
Name:  "Reds",
Colors: []string{"Crimson", "Red", "Ruby", "Maroon"},
Colors: []string{"Crimson", "Red", "Ruby", "Maroon"},
}
}
b, err := yaml.Marshal(group)
yamlBytes, err := yaml.Marshal(colorGroup)
if err != nil {
fmt.Println("error:", err)
}
fmt.Println(string(yamlBytes))
}
</syntaxhighlight>
 
==예시: Animals==
<syntaxhighlight lang='go' run>
package main
import (
        "fmt"
        "gopkg.in/yaml.v3"
)
 
type Animal struct {
Name  string
Order string
}
 
func main() {
animals := []Animal{
{
Name: "Platypus",
Order: "Monotremata",
},
{
Name: "Quoll",
Order: "Dasyuromorphia",
},
}
yamlBytes, err := yaml.Marshal(animals)
if err != nil {
if err != nil {
fmt.Println("error:", err)
fmt.Println("error:", err)
}
}
fmt.Println(string(b))
fmt.Println(string(yamlBytes))
}
}
</syntaxhighlight>
</syntaxhighlight>

2023년 2월 3일 (금) 16:07 기준 최신판

1 개요[ | ]

Go YAML Marshal()
  • 구조체 → YAML

2 예시: ColorGroup[ | ]

package main
import (
        "fmt"
        "gopkg.in/yaml.v3"
)

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

func main() {
	colorGroup := ColorGroup{
		ID:     1,
		Name:   "Reds",
		Colors: []string{"Crimson", "Red", "Ruby", "Maroon"},
	}
	yamlBytes, err := yaml.Marshal(colorGroup)
	if err != nil {
		fmt.Println("error:", err)
	}
	fmt.Println(string(yamlBytes))
}

3 예시: Animals[ | ]

package main
import (
        "fmt"
        "gopkg.in/yaml.v3"
)

type Animal struct {
	Name  string
	Order string
}

func main() {
	animals := []Animal{
		{
			Name: "Platypus",
			Order: "Monotremata",
		},
		{
			Name: "Quoll",
			Order: "Dasyuromorphia",
		},
	}
	yamlBytes, err := yaml.Marshal(animals)
	if err != nil {
		fmt.Println("error:", err)
	}
	fmt.Println(string(yamlBytes))
}

4 같이 보기[ | ]

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