微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

多行 Snakeyaml

如何解决多行 Snakeyaml

我想知道如何在 java 上的 yaml 中执行此操作:

admins:
  test:
    id: 1234

我只设法在没有“子字段”的情况下做到了,就像这样:

address: Star City
id.test: 19
name: John
department: Medical

使用此代码

        Map<String,Object> dataMap = new HashMap<>();
        dataMap.put("id","a");
        dataMap.put("name","John");
        dataMap.put("address","Star City");
        dataMap.put("department","Medical");
        DumperOptions options = new DumperOptions();
        options.setIndent(2);
        options.setPrettyFlow(true);
        options.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK);
        Yaml yaml = new Yaml(options);
        PrintWriter writer = null;
        try {
            writer = new PrintWriter(new File("./src/main/resources/admins.yml"));
            yaml.dump(dataMap,writer);
        } catch (FileNotFoundException e) {
            e.printstacktrace();
        }

解决方法

如果你想要一个嵌套的 YAML 结构,创建一个嵌套的数据结构:

dataMap.put("admins",Map.of("test",Map.of("id",1234)));

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。