首页 > 解决方案 > 使用 snakeYaml 解析字符串数组

问题描述

我以这种方式有一个yaml文件

A: ["aa","bb","cc"]

我想知道是否有任何 YAML 库可以解析这个字符串数组而不是使用字符串库?

标签: javaarraysstringsnakeyaml

解决方案


你可以snakeyaml这样使用:

在 pom.xml 中定义库:

<dependency>
    <groupId>org.yaml</groupId>
    <artifactId>snakeyaml</artifactId>
    <version>1.23</version>
</dependency>

映射器类:

public class YamlEntity {
    private Map<String, List<String>> value;

    public Map<String, List<String>> getValue() {
        return value;
    }

    public void setValue(Map<String, List<String>> value) {
        this.value = value;
    }

    @Override
    public String toString() {
        return "YamlEntity [value=" + value + "]";
    }

 }

yaml 文件之类的example.yaml

value: [aa, bb, cc]

和你的方法:

public static void readYaml() {
    Yaml yaml = new Yaml();
    InputStream is = App.class.getResourceAsStream("example.yaml");

    Map<String, List<YamlEntity>> ye = yaml.load(is);
    System.out.println(ye.get("value"));
}

结果是:[aa, bb, cc]


推荐阅读