当前位置:   article > 正文

DumperOptions:配置文件yml读写

dumperoptions

DumperOptions:配置文件yml读写

demo

// list版本:
public static List<MyConfigYaml> readYaml(String filePath) throws Exception {
        ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
        List<MyConfigYaml> dataDirList = mapper.readValue(new File(filePath), new TypeReference<List<MyConfigYaml>>() { });
        return dataDirList;
    }
 
// 实例对象版本:
public static ApplicationYml readApplication(String configPath)
        throws IOException, JsonParseException, JsonMappingException {
        ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
        ApplicationYml applicationYml = mapper.readValue(new File(configPath), ApplicationYml.class);
        return applicationYml;
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

使用DumperOptions方法:https://blog.csdn.net/mmh19891113/article/details/82079654
https://www.cnblogs.com/felixzh/p/6003370.html

    public static Object readYaml(String ymlPath) throws Exception {
        try (FileInputStream inputStream = new FileInputStream(ymlPath)) {
            DumperOptions dumperOptions = new DumperOptions();
            dumperOptions.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK);
            dumperOptions.setDefaultScalarStyle(DumperOptions.ScalarStyle.PLAIN);
            dumperOptions.setPrettyFlow(false);
            Yaml yaml = new Yaml(dumperOptions);
            return yaml.load(inputStream);
        } catch (IOException e) {
            throw new FileNotFoundException("Write Yaml failed");
        }
    }

    public static void writeYaml(Object object, String ymlPath) throws Exception {
        try (FileOutputStream outputStream = new FileOutputStream(ymlPath);
            OutputStreamWriter outputStreamWriter = new OutputStreamWriter(outputStream)) 
            {
            DumperOptions dumperOptions = new DumperOptions();
            dumperOptions.setDefaultFlowStyle(DumperOptions.FlowStyle.BLOCK);
            dumperOptions.setDefaultScalarStyle(DumperOptions.ScalarStyle.PLAIN);
            dumperOptions.setPrettyFlow(false);
            Yaml yaml = new Yaml(dumperOptions);
            yaml.dump(object, outputStreamWriter);
        } catch (FileNotFoundException e) {
            throw new FileNotFoundException("Write Yaml failed");
        }
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/326296
推荐阅读
相关标签
  

闽ICP备14008679号