如何使用 NimYAML 将 JsonNode 转储到 yaml 文件?

问题描述

我开始使用 nim-lang,我需要在 YAML 文件中保存一个 JsonNode。

我成功地使用 NimYAML 将 yaml 文件加载到 JsonNode 中。但是我还不清楚如何做相反的事情或者是否有可能。

谁能给我一些帮助或建议?

谢谢

解决方法

我是 NimYAML 的作者。

JsonNode 加载器作为连接处理 JsonNode 结构的现有代码的桥梁而存在,因此您可以启用该代码以将输入作为 YAML。

但是,如果您加载 YAML 代码的目的是再次将其序列化为 YAML,那么 JsonNode 就是执行此操作的错误 API - 您应该改用 YamlNode

如果您有一个现有的 JsonNode 并希望将其输出为 YAML,您可以随时将其序列化为 JSON——因为 JSON 是 YAML 的子集,JSON 序列化也将是有效的 YAML。如果您明确希望拥有 YAML 的块样式集合,则需要将 JsonNode 序列化为 JSON,使用 NimYAML 加载结果,更改样式,然后将其再次序列化为 YAML。