当前位置: > > > > golang中解析yaml文件的问题
golang中解析yaml文件的问题
来源:stackoverflow
2024-04-29 09:06:36
0浏览
收藏
目前米云上已经有很多关于Golang的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《golang中解析yaml文件的问题》,也希望能帮助到大家,如果阅读完后真的对你学习Golang有帮助,欢迎动动手指,评论留言并分享~
问题内容
我正在寻找解组简单的 yaml,但有些东西不对。已经花了足够的时间了。请问有什么帮助吗?
package main
import (
"fmt"
yaml "gopkg.in/yaml.v2"
)
func main() {
raw := `
targets:
- from: "http://localhost:8080/test1"
timeout: "10s"
- from: "http://localhost:8080/test2"
timeout: "30s"
`
type target struct {
from string `yaml:"from"`
timeout string `yaml:"timeout"`
}
type config struct {
targets []target `yaml:"targets"`
}
cfg := config{}
err := yaml.unmarshal([]byte(raw), &cfg)
if err != nil {
fmt.println(err)
}
fmt.println("config", cfg)
}
我正在低于空o/p
Config {[{ } { }]}
演示-> https://play.golang.org/p/lanmpq_zpp9
正确答案
您必须导出结构中的字段。如 api 文档中所述:
结构体字段只有在导出时才被解组(首字母大写),并且使用小写的字段名称作为默认键进行解组。
()
将 target-struct 更改为:
type Target struct {
From string `yaml:"from"`
Timeout string `yaml:"timeout"`
}
应该可以。
试试:
今天关于《golang中解析yaml文件的问题》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注米云公众号!
