java如何读写操作yaml文件展示
文章目录
- 前言
- java 读取 yaml
- 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() 就不会
还没有评论,来说两句吧...