java如何读写操作yaml文件展示


在这里插入图片描述

前言

yaml 本身是一个标记语言,其文件形式是.yml,常用来作数据配置的文件

下面使用的 Yaml 来源于org.yaml.snakeyaml这个依赖包,需要自己导入

java 读取 yaml

@Test
    public void read() throws IOException {
        Yaml yml = new Yaml();
        FileReader reader = new FileReader("src\\test\\java\\test.yml");
        BufferedReader buffer = new BufferedReader(reader);
        Map<String,Object> map = yml.load(buffer);
        System.out.println(map.get("key1"));
        System.out.println(map.get("key2"));
        buffer.close();
        reader.close();
    }

java 写入 yaml

@Test
    public void write() throws IOException {
        Map<String, Object> map = new HashMap<>();
        map.put("key1", 1);
        map.put("key2", "2");
        Yaml yml = new Yaml();
        FileWriter writer = new FileWriter("src\\test\\java\\test.yml", true);
        BufferedWriter buffer = new BufferedWriter(writer);
        buffer.newLine();
        yml.dump(map, buffer);
        buffer.close();
        writer.close();
    }

这里值得注意的是这个 dump() 方法,dump 本意是卸下数据,即将键值对的数据转变成 String 类型

dump 可以接收一个参数,或者两个参数。若是接收两个参数,第二个参数是输出流。当接收一个参数时返回 String,这样再使用输出流的 write() 方法就可以直接写到 yml 中;当接收两个参数时返回 void,直接就可以实现写进磁盘的操作。

上述代码中 dump() 方法直接写进磁盘与 write() 写进磁盘还是有区别的,dump() 写完之后会自动添加上一个回车符,然而 write() 就不会

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章