Java 使用 SnakeYAML 解析 YAML 文件
Java YAML 大约 1302 字介绍
SnakeYAML
是针对YAML 1.1
的Java
解析器。
Maven 依赖
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.30</version>
</dependency>
解析单个 YAML
使用load
加载单个YAML
。
person:
name: tom
age: 18
address:
- addressA
- addressB
teams:
- id: 1
name: team1
createTs: 2022-01-01
- id: 2
name: team2
createTs: 2022-02-02
Yaml yaml = new Yaml();
InputStream inputStream1 = Thread.currentThread().getContextClassLoader().getResourceAsStream("testA.yml");
Map map = yaml.load(inputStream1);
System.out.println(map);
解析组合 YAML
使用loadAll
加载组合的YAML
。
person:
name: tom
age: 18
address:
- addressA
- addressB
teams:
- id: 1
name: team1
createTs: 2022-01-01
- id: 2
name: team2
createTs: 2022-02-02
---
testField:
name: aaa
test: xxx
Yaml yaml = new Yaml();
InputStream inputStream2 = Thread.currentThread().getContextClassLoader().getResourceAsStream("testB.yml");
Iterable<Object> objects = yaml.loadAll(inputStream2);
for (Object object : objects) {
System.out.println(object);
System.out.println("--------------------------------------");
}
官方文档
https://bitbucket.org/snakeyaml/snakeyaml/wiki/Documentation
开源地址
阅读 2744 · 发布于 2022-06-04
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看
换一批
-
Spring 中的设计模式阅读 1236
-
Spring Boot 分层构建 Docker 镜像阅读 842
-
Prometheus+Grafana+windows_exporter 监控 Windows 系统阅读 2351
-
Spring Boot 实现 SSE 服务端推送事件阅读 5007
-
Docker 部署 Flink阅读 1177
-
数据结构:稀疏数组阅读 1089
-
Tomcat 开启 gzip 压缩阅读 1508
-
Go channel 通道阅读 155
-
Windows WSL 下 Docker 启动报 waiting for init preliminary setup caused: EOF: unknown 错误阅读 3753
-
设计模式之工厂模式阅读 1992