yml转换html,properties转换yml格式
springBoot 的配置文件如果用properties会有中文乱码的问题,改成yml可以解决。该工具应运而生。
import com.xiaoleilu.hutool.io.FileUtil;
import org.junit.jupiter.api.Test;
import org.springframework.util.StringUtils;
import java.util.*;
/**
* Created by DimonHo on 2017/11/3.
*/
public class AnalyzerFiler {
/**
* properties转yml
* @param propertiesPath
* @param propertiesCharset
* @param ymlCharset
* @return
*/
public String propertiesToYml(String propertiesPath,String propertiesCharset,String ymlCharset){
List lines = FileUtil.readLines(propertiesPath, propertiesCharset);
String path = FileUtil.getAbsolutePath(propertiesPath);
//使用treemap排好序
Map sourceMap = new TreeMap();
for (String line:lines){
if (!StringUtils.isEmpty(line) && !line.startsWith("#")){
String key = line.substring(0,line.indexOf("="));
String value = line.substring(line.indexOf("=")+1);
sourceMap.put(key,value);
}
}
Iterator it = sourceMap.keySet().iterator();
//保存yml的行内容
List ymlLines = new ArrayList();
//Tab用两个空格格式化
String tab = " ";
//yml文档树
Map> treeMap = new TreeMap>();
//父级名称
String parent = "";
//子节点列表
List element = new ArrayList();
while(it.hasNext()){
String key = it.next();
//.拆分key
String[] keys = key.split("\\.");
String prefix = "";
for (int i=0;i
//从第二个节点开始,行前面需要加tab来格式化,并设置它的父节点
if (i>0){
parent+=keys[i-1];
prefix += tab;
}
String line = prefix + keys[i]+ ": ";
if (treeMap.get(parent)==null) treeMap.put(parent,new ArrayList());
if(!treeMap.get(parent).contains(line)){
element = treeMap.get(parent)==null?new ArrayList():treeMap.get(parent);
if (!element.contains(line)){
element.add(line);
treeMap.put(parent,element);
}
if (i==keys.length-1){
ymlLines.add(line+sourceMap.get(key));
parent = "";
}else{
ymlLines.add(line);
}
}
}
}
FileUtil.writeLines(ymlLines,path.replace(".properties",".yml"),ymlCharset);
return "ok";
}
}
yml转换html,properties转换yml格式相关推荐
- application.properties转换成application.yml配置Oracle数据库连接时报错
application.properties转换成application.yml报错Failed to determine a suitable driver class,原因是driver-clas ...
- JSON数据格式:以及XML文件格式,YML文件格式,properties文件格式
JSON数据格式:以及XML文件格式,YML文件格式,properties文件格式 数据格式: json数据格式:属于轻量级数据格式,是javascript的一种描述数据的格式.具有易于解析,语法简单 ...
- SpringBoot的properties和yml两种配置方式, 配置注入参数, 以及配置文件读取失效的问题
SpringBoot支持两种配置方式,一种是properties文件,一种是yml 首先在pom文件中添加依赖: <dependency><groupId>org.spring ...
- Spring Boot properties和yml
概念介绍 properties 和 yml 都是 Spring Boot 支持的两种配置文件,它们可以看作是 Spring Boot 在不同时期的两款"产品".在 Spring B ...
- 进行将多张CAD图纸转换成高清WMF格式的操作是什么?
进行将多张CAD图纸转换成高清WMF格式的操作是什么?WMF格式是图片格式中的一种,为了方便将CAD图纸文件进行查看我们会需要将其进行格式间的转换操作,将其进行转换成图片格式中的WMF格式就是其中的一 ...
- c++ 解析从浏览器端传过来的图像base64编码,并转换成opencv识别的格式
from: c++ 解析从浏览器端传过来的图像base64编码,并转换成opencv识别的格式 #include <cstdint> #include <fstream> #i ...
- kux格式怎么转换成mp3_把MP3格式的音频转换成WAV格式
有时候工作中我们在处理音频的过程中,需要转换音频的格式,以便于更好的使用.例如,可能会要求把MP3格式的音频转换成其他的音频格式.这时候如何解决是一个问题.今天我就和大家介绍好用的音频转换器,可以快速 ...
- bootstrap.yml与application.properties区别?
1. bootstrap.yml先于application.properties被加载. 2. bootstrap.yml被Spring ApplicationContext的父类加载,这个类先于加载 ...
- matlab 数值格式转换,Matlab字符串转换及数值格式转换
Matlab字符串转换及数值格式转换 字符串转换函数 abs 字符串到ASCII转换 dec2hex 十进制数到十六进制字符串转换 fprintf 把格式化的文本写到文件中或显示屏上 hex2dec ...
- 上传 mp4 格式判断_视频如何转换成通用的MP4格式?按下这个键,10秒就能搞定...
我们在网上下载视频的时候,有很多的视频都是无法播放的,或者是需要特定的播放器才可以播放.其实,只要把这些视频的格式转换成通用的MP4格式即可.如果你还不知道怎么转换视频格式,下面就教大家两个小方法,百 ...
最新文章
- 数据结构与算法-学习笔记(13)
- DDoS攻击的大量增加给企业带来了新的威胁——Vecloud
- AI:2020年6月24日北京智源大会演讲分享之机器学习前沿青年科学家专题论坛——10:40-11:10金驰《Near-Optimal Reinforcement Learning with Sel》
- Redis中的发布与订阅的概念与以命令行的方式实现发布订阅举例
- 人工智能(1)---从0开始搭建产品经理的AI认知体系
- POJ 3254 Corn Fields [DP]
- 模型调参(AutoML)— optuna
- 多元线性回归:客户价值预测
- 我的世界java版海岛种子_我的世界海岛种子大全(附:大型海岛村庄种子)
- 【搜索/tarjan找环】zznu-简单环路
- 计算机弹出虚拟U盘,怎么设置vmware虚拟机U盘启动
- HTML中的长度单位px、em、rem
- 华硕Z91515C笔记本使用随记
- 如何解决微信端不能直接跳转浏览器
- 来自全国各地的65位高校教师接龙晒工资,供参考
- (转载)关于C#的fixed
- 高鸿业西方经济学重点归纳总结
- vue 数字滚动count-to插件,支持小数(包含vue3,网上整理)
- matlab自定义函数拟合写法,[MATLAB基础] 求助:如何确定自定义函数拟合时的参数初值?感谢!...
- nginx做代理访问慢,优化方案
热门文章
- 如何使用smobiler的listview控件实现个人信息修改
- Verilog实现的格雷码与二进制码的互相转换
- 互联网晚报 | 06月14日 星期二 | 罗永浩称苹果有些产品明显退步;​旷视首席科学家孙剑博士去世;吉利拟收购魅族...
- php个人财务管理,PHP个人理财管理系统的设计与实现
- emoji 表情图片解决方法
- 计算机系统与itunes不兼容,解决XP系统安装iTunes的要求更改更高版本的不兼容情况...
- H5+CSS3面试题
- Failed to parse XML
- python 爬取生意参谋数据_如何爬取生意参谋数据?是不是违规操作?
- 深入理解Java类加载器(ClassLoader)