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() 就不會

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