Java实现yaml转map
时间: 2024-01-31 14:04:08 浏览: 59
java 一键读取yaml、propertites配置文件内容,转换为一级map
你可以使用 Jackson 库来实现将 YAML 格式的字符串转换为 Java 中的 Map 对象。具体步骤如下:
1. 引入 Jackson 库的依赖,例如在 Maven 中添加以下依赖:
```xml
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
<version>2.12.4</version>
</dependency>
```
2. 使用 ObjectMapper 类来读取 YAML 字符串并转换为 Map 对象。示例代码如下:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
import java.io.IOException;
import java.util.Map;
public class YamlToMap {
public static void main(String[] args) throws IOException {
String yamlString = "key1: value1\nkey2:\n subkey1: subvalue1\n subkey2: subvalue2";
ObjectMapper objectMapper = new ObjectMapper(new YAMLFactory());
Map<String, Object> map = objectMapper.readValue(yamlString, Map.class);
System.out.println(map);
}
}
```
其中,`yamlString` 是 YAML 格式的字符串,`ObjectMapper` 是 Jackson 库中的对象映射器,`Map.class` 表示要将 YAML 转换为 `Map` 对象。运行以上代码,输出的结果为:
```
{key1=value1, key2={subkey1=subvalue1, subkey2=subvalue2}}
```
即将 YAML 字符串成功转换为了 Java 中的 Map 对象。
阅读全文