duanchun1909
2019-02-12 01:51
浏览 769
已采纳

如何在Golang中将配置数组传递给YAML文件?

I am trying to create a YAML configuration file using gosexy/yaml.

I know how to create a YAML file of the following format:

another:
  tree:
  - 1

I use the code settings.Set("another","tree",[]int{1}) to create the above file.

Now, how can I create a file of the format

another:
  - tree: 1

I tried using the code settings.Set("another",[]{yaml.Set("tree",1)}) to create the above file. As it might be obvious, I receive a type error since I am not passing the type to the array.

Am I on the right track? If yes, what should be the type to be passed. If no, what is the alternative way to do this?

图片转代码服务由CSDN问答提供 功能建议

我正在尝试使用 gosexy / yaml

我知道如何创建以下格式的YAML文件:

 另一个:
树:
-1 
   
 
 

我使用代码 settings.Set(“ another”,“ tree “,[] int {1})来创建上述文件。

现在,如何创建格式为 <的文件 pre> 另一个: -树:1

我尝试使用代码 settings.Set(“ another”,[] {yaml .Set(“ tree”,1)})创建上述文件。 显而易见,由于未将类型传递给数组,因此收到类型错误。

我在正确的轨道上吗? 如果是,应该传递什么类型。 如果没有,执行此操作的替代方法是什么?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • douwendu2460 2019-02-12 04:15
    已采纳

    the type of tree that you need is []map[string]int

    example code:

    settings := yaml.New()
    settings.Set("another", []map[string]int{{"tree": 1}})
    settings.Write("test.yaml")
    

    the result of test.yaml

    another:
    - tree: 1
    

    hope it help

    打赏 评论

相关推荐 更多相似问题